This commit is contained in:
2509165045
2026-06-23 12:08:02 +08:00
parent f44ad14760
commit 3b39c7148a
3 changed files with 158 additions and 25 deletions

1
期末/可视化 Normal file
View File

@@ -0,0 +1 @@
import matplotlib.pyplot

View File

@@ -2,32 +2,39 @@ import requests
from bs4 import BeautifulSoup as bs
import json
headers = {'User-Agent':'Mozilla/5.0(Windows NT 10.0;Win64; x64) AppleWebKit/537.36(KHTML,like Gecko) Chrome/91.0.4472.124 Safari/537.36'}
url="https://movie.douban.com/top250?start=25"
data=[]
resp = requests.get(url, headers = headers)
resp.encoding='uft-8'
soup= bs(resp.text,"html.parser")
items= soup.find_all("div",class_="item")
#print(items[0])
for i in range(len(items)):
print(i)
title=items[i].find("span",class_="title").get_text()
urls = [
"https://movie.douban.com/top250?start=0", # 第1页1-25
"https://movie.douban.com/top250?start=25", # 第2页26-50
]
data = []
actors=items[i].find("div",class_="bd").get_text().strip()
try:
actors=actors.split("主演:")[1].split("\n")[0]
except:
actors="无"
try:
quote=items[i].find("div", class_="bd").find("p",class_="quote").get_text().strip()
except:
quote="无"
data.append({
"title":title,
"actor":actors,
"quote":quote
})
for url in urls:
resp = requests.get(url, headers=headers)
resp.encoding = 'utf-8' # 修复了拼写uft-8 → utf-8
soup = bs(resp.text, "html.parser")
items = soup.find_all("div", class_="item")
for i in range(len(items)):
print(i)
title = items[i].find("span", class_="title").get_text()
actors = items[i].find("div", class_="bd").get_text().strip()
try:
actors = actors.split("主演:")[1].split("\n")[0]
except:
actors = "无"
try:
quote = items[i].find("div", class_="bd").find("p", class_="quote").get_text().strip()
except:
quote = "无"
data.append({
"title": title,
"actor": actors,
"quote": quote
})
print(data)
with open("movie.json","w",encoding="utf-8") as f:
json.dump(data,f,ensure_ascii=False,indent=4)
json.dump(data,f,ensure_ascii=False,indent=4)