From 3e821217d2520f35f75bab59e9d921ee5a662f27 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=85=A7=E8=8C=B9?= <2509165015@student.example.com> Date: Tue, 23 Jun 2026 11:12:36 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E6=96=87=E4=BB=B6=E8=87=B3?= =?UTF-8?q?=20/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- crawl.py | 44 ++++++++++++++++++++++++++++++++++++++++++ data_analysis.py | 26 +++++++++++++++++++++++++ q3_1_image_labels.zip | Bin 0 -> 26254 bytes 3 files changed, 70 insertions(+) create mode 100644 crawl.py create mode 100644 data_analysis.py create mode 100644 q3_1_image_labels.zip diff --git a/crawl.py b/crawl.py new file mode 100644 index 0000000..6c0f423 --- /dev/null +++ b/crawl.py @@ -0,0 +1,44 @@ +import requests +from bs4 import BeautifulSoup +import json +head = { + "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) Chrome/129.0.0.0 Safari/537.36" +} +web_url = "https://exam.detr.top/exam-b/movies" +res = requests.get(web_url, headers=head) +res.encoding = "utf-8" +source_html = res.text +html_file = open("movies.html", "w", encoding="utf-8") +html_file.write(source_html) +html_file.close() +html_parse = BeautifulSoup(source_html, "html.parser") +all_movie = html_parse.find_all("div", class_="item") +movie_info = [] +for movie in all_movie: + movie_id = movie.get("data-id") + m_title = movie.find("span", class_="title").get_text().strip() + info_block = movie.find("div", class_="bd") + info_text = info_block.get_text().strip().split("\n")[0] + split_data = [text.strip() for text in info_text.split("/")] + director = split_data[0] + year = split_data[1] + duration = split_data[2] + genre = split_data[3] + actor_num = int(split_data[4]) + score = float(movie.find("p", class_="quote").get_text().strip()) + single_movie = { + "id": movie_id, + "title": m_title, + "director": director, + "year": year, + "rating": score, + "duration": duration, + "genre": genre, + "actors_count": actor_num + } + movie_info.append(single_movie) +json_file = open("movies.json", "w", encoding="utf-8") +json.dump(movie_info, json_file, ensure_ascii=False, indent=2) +json_file.close() + +print("爬虫抓取完成,已生成movies.html、movies.json两个文件") \ No newline at end of file diff --git a/data_analysis.py b/data_analysis.py new file mode 100644 index 0000000..190fde9 --- /dev/null +++ b/data_analysis.py @@ -0,0 +1,26 @@ +import json +read_file = open("movies.json", "r", encoding="utf-8") +movie_data = json.load(read_file) +read_file.close() +rank_movie = sorted(movie_data, key=lambda x: x["rating"]) +min_score_movie = rank_movie[0] +max_score_movie = rank_movie[-1] +print("1、评分最低电影:", min_score_movie["title"], ",评分:", min_score_movie["rating"]) +print(" 评分最高电影:", max_score_movie["title"], ",评分:", max_score_movie["rating"]) +genre_count_dict = {} +for film in movie_data: + film_type = film["genre"] + if film_type in genre_count_dict: + genre_count_dict[film_type] = genre_count_dict[film_type] + 1 + else: + genre_count_dict[film_type] = 1 +print("\n2、各类型电影统计:", genre_count_dict) +director_count_dict = {} +for film in movie_data: + dir_name = film["director"] + if dir_name in director_count_dict: + director_count_dict[dir_name] += 1 + else: + director_count_dict[dir_name] = 1 +print("\n3、各导演电影数量:", director_count_dict) +count_after_2020 = 0 \ No newline at end of file diff --git a/q3_1_image_labels.zip b/q3_1_image_labels.zip new file mode 100644 index 0000000000000000000000000000000000000000..0a5c72eadce8546d12d106d9ae8ce959b2d4df33 GIT binary patch literal 26254 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