提交作业python2-1
来源:2-1 获取目标信息
jazia
2021-09-08 00:34:15
import requests
from bs4 import BeautifulSoup
def get_list(soup_list): #定义一个函数,清洗解析后的网页信息,并以列表形式返回
list1=[]
for ele in soup_list:
list1.append(ele.string)
return list1
#访问网页、获取信息
url_db_movie='https://movie.douban.com/subject/1292052/'
headers={'user-agent':'my-app/0.0.1'}
response=requests.get(url=url_db_movie,headers=headers)
#解析网页
soup=BeautifulSoup(response.text,'html.parser')
#print(soup.prettify())
movie_info={}
#电影名称
movie_info['title']=soup.find(property="v:itemreviewed").string
#简介部分
movie_info['director']=soup.find(rel="v:directedBy").string #导演
movie_info['writer']=soup.find_all(class_="attrs")[0].string #编剧
# actor_list=[]
# for ele in soup.find_all(rel="v:starring"):
# actor_list.append(ele.string)
# actors=actor_list
movie_info['actors']=get_list(soup.find_all(rel="v:starring")) #演员
movie_info['gener']=get_list(soup.find_all(property="v:genre")) #类型
movie_info['pro_country']=soup.find(text="制片国家/地区:").next_element #制片国家
movie_info['language']=soup.find(text="语言:").next_element #语言
movie_info['release_date']=soup.find(property="v:initialReleaseDate").string #上映日期
movie_info['rumtime']=soup.find(property="v:runtime").string #片长
#评分部分
movie_info['average']=soup.find(property="v:average").string #评分
movie_info['votes']=soup.find(property="v:votes").string #评分人数
movie_info['5-star']=soup.find_all(class_="rating_per")[0].string
movie_info['4-star']=soup.find_all(class_="rating_per")[1].string
movie_info['3-star']=soup.find_all(class_="rating_per")[2].string
movie_info['2-star']=soup.find_all(class_="rating_per")[3].string
movie_info['1-star']=soup.find_all(class_="rating_per")[4].string
for k in movie_info:
print(k,":",movie_info.get(k))
E:\anaconda3\python.exe E:/PyCharmProject/Data_Analysis/C7爬虫/7.5获取目标信息.py
title : 肖申克的救赎 The Shawshank Redemption
director : 弗兰克·德拉邦特
writer : 弗兰克·德拉邦特
actors : ['蒂姆·罗宾斯', '摩根·弗里曼', '鲍勃·冈顿', '威廉姆·赛德勒', '克兰西·布朗', '吉尔·贝罗斯', '马克·罗斯顿', '詹姆斯·惠特摩', '杰弗里·德曼', '拉里·布兰登伯格', '尼尔·吉恩托利', '布赖恩·利比', '大卫·普罗瓦尔', '约瑟夫·劳格诺', '祖德·塞克利拉', '保罗·麦克兰尼', '芮妮·布莱恩', '阿方索·弗里曼', 'V·J·福斯特', '弗兰克·梅德拉诺', '马克·迈尔斯', '尼尔·萨默斯', '耐德·巴拉米', '布赖恩·戴拉特', '唐·麦克马纳斯']
gener : ['剧情', '犯罪']
pro_country : 美国
language : 英语
release_date : 1994-09-10(多伦多电影节)
rumtime : 142分钟
average : 9.7
votes : 2442114
5-star : 85.5%
4-star : 13.1%
3-star : 1.2%
2-star : 0.1%
1-star : 0.1%
Process finished with exit code 0
1回答
DeltaF
2021-09-09
棒棒哒,祝你学习愉快
相似问题