豆瓣是一个大众点评电影、图书、电视剧的网站,很多人都会在上面为自己支持或者反对的电影去评分,而这些评分也在一定程度上反映了该电影是否好看 。而这一篇所讲解和介绍的内容就是python爬取豆瓣电影评分的代码以及步骤,感兴趣的话就往下看看吧 。
文章插图
一、实现思路
豆瓣上所有的电影都是可以在排行榜之中看到,而在这个界面中就可以看到有电影名、出版时间、演员以及评分等等信息,而这些数据实际上都是保存在了指定标签之中 。所以只需要定位到标签然后获取其中的信息再进行解析,就可以得到电影名以及电影评分了 。
二、实现代码
1.python爬虫程序开发第一步就是导入所需要使用的模块,而像豆瓣网站发送请求需要用到requests库,解析和处理返回的数据则使用re以及bs4两个库 。最后用pandas库来保存处理后的数据到文件,代码示例如下所示:
import requestsimport refrom bs4 import BeautifulSoupimport pandas as pd2.然后分别定义两个变量来保存豆瓣电影排行榜网站连接以及请求头信息,再调用get()方法向这个网站发送请求获取数据,用BeautifulSoup解析源码为节点数形式 。再通过正则表达式来定位指定元素,代码示例如下所示:
url = 'https://movie.douban.com/chart'headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36'}html = requests.get( url , headers = headers)bs = BeautifulSoup(html.text,'html.parser')movie_list = bs.find_all(class_='item')links = re.compile('class="nbg" href=https://www.ycpai.cn/python/"(.*?)" title=')links = re.findall(links,str(movie_list))3.最后在for循环之中不断进入到新的页面获取电影名以及评分,最后将其保存到Dataframe结构之中,然后保存到csv文件内即可,详细代码如下所示:
for item in links[:1]: page = requests.get(item,headers=headers) page = BeautifulSoup(page.text,'html.parser') title = page.find_all(id = 'content' ) set_title = re.compile('property="v:itemreviewed">(.*?)</span>') title = re.findall(set_title,str(title)) rate = page.find_all(class_ = 'll rating_num') rate = re.findall('"v:average">(.*?)</strong>',str(rate))dataframe = pd.DataFrame({"title":movies_title,"rate":movies_rate})dataframe.to_csv("test.csv",encoding = 'gbk')【Python爬取豆瓣电影评分代码?Python怎么抓取豆瓣电影评分】以上就是关于“Python爬取豆瓣电影评分代码?Python怎么抓取豆瓣电影评分”的全部内容了,希望对你有所帮助 。
文章插图
文章插图
文章插图
微信扫码,学习更方便
文章插图
现在报名赠100例知识点合集
推荐阅读
- Pandas查询数据怎么做?Python使用pandas查询数据的方式有哪些
- Python多条件筛选数据怎么做?Python如何多条件筛选数据
- 豆瓣海椒的制作方法 豆瓣酱炒海椒的做法
- 豆瓣花怎么养
- 豆瓣菜是凉性的吗 关于豆瓣菜的食物属性
- 用Python进行多页数据爬取怎么做?Python爬虫多页抓取如何实现
- 如何使用Python生成词云图?Python怎么用pyecharts库生成词云图
- ?Python中complex函数是什么?Python中complex函数的应用
- python界面是什么样的?python软件界面的介绍
- linux中如何终止Python指令的运行?linux怎么退出python环境