添加 1
This commit is contained in:
88
1
Normal file
88
1
Normal file
@@ -0,0 +1,88 @@
|
|||||||
|
import requests
|
||||||
|
from bs4 import BeautifulSoup as bs
|
||||||
|
import json
|
||||||
|
|
||||||
|
url = 'https://exam.detr.top/exam-b/movies'
|
||||||
|
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/149.0.0.0 Safari/537.36 Edg/149.0.0.0',
|
||||||
|
'Referer':'https://exam.detr.top/exam-b/movies'}
|
||||||
|
req = requests.get(url, headers=headers)
|
||||||
|
req.encoding="utf-8"
|
||||||
|
|
||||||
|
data=[]
|
||||||
|
|
||||||
|
soup=bs(req.text,"html.parser")
|
||||||
|
# print(soup)
|
||||||
|
#id, title, director, year, rating, duration, genre, actors-count
|
||||||
|
|
||||||
|
items=soup.select('.item-row')
|
||||||
|
# movie_list=[]
|
||||||
|
for i in range(len(items)):
|
||||||
|
id=items[i].find("td",class_="item-id").get_text()
|
||||||
|
title=items[i].find("td",class_="item-title").get_text().strip()
|
||||||
|
director=items[i].find("td",class_="item-director").get_text().strip()
|
||||||
|
year=items[i].find("td",class_="item-year").get_text()
|
||||||
|
rating=items[i].find("td",class_="item-rating").get_text()
|
||||||
|
duration=items[i].find("td",class_="item-duration").get_text()
|
||||||
|
genre=items[i].find("td",class_="item-genre").get_text()
|
||||||
|
actors_count=items[i].find("td",class_="item-actors-count").get_text()
|
||||||
|
|
||||||
|
data.append({
|
||||||
|
"id":id,
|
||||||
|
"title":title,
|
||||||
|
"director":director,
|
||||||
|
"year":year,
|
||||||
|
"rating":rating,
|
||||||
|
"duration":duration,
|
||||||
|
"genre":genre,
|
||||||
|
"actors_count":actors_count
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
print(data)
|
||||||
|
|
||||||
|
# for tr in item:
|
||||||
|
# tds=tr.find_all("td")
|
||||||
|
# tds=list(tds)
|
||||||
|
# # print(tds)
|
||||||
|
# if len(tds)<8:
|
||||||
|
# continue
|
||||||
|
# movie={
|
||||||
|
# "id":tds[0].get_text(strip=True),
|
||||||
|
# "title":tds[1].get_text(strip=True),
|
||||||
|
# "director":tds[2].get_text(strip=True),
|
||||||
|
# "year":tds[3].get_text(strip=True),
|
||||||
|
# "rating":tds[4].get_text(strip=True),
|
||||||
|
# "duration":tds[5].get_text(strip=True),
|
||||||
|
# "genre":tds[6].get_text(strip=True),
|
||||||
|
# "actors_count":tds[7].get_text(strip=True)
|
||||||
|
# }
|
||||||
|
# movie_list.append(movie)
|
||||||
|
# print(movie_list)
|
||||||
|
|
||||||
|
|
||||||
|
with open('movie.json', 'w', encoding='utf-8') as f:
|
||||||
|
json.dump(data, f, ensure_ascii=False, indent=2)
|
||||||
|
|
||||||
|
with open("movie.html","w",encoding='utf-8') as f:
|
||||||
|
json.dump(data, f, ensure_ascii=False, indent=2)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# for i in range(len(items)):
|
||||||
|
# rank=i+1
|
||||||
|
# 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="无"
|
||||||
|
# quote=items[i].find("p",class_="quote").get_text().strip()
|
||||||
|
|
||||||
|
# data.append({
|
||||||
|
# "rank":rank,
|
||||||
|
# "title":title,
|
||||||
|
# "actors":actors,
|
||||||
|
# "quote":quote
|
||||||
|
# })
|
||||||
Reference in New Issue
Block a user