python爬虫1-豆瓣的影评信息(含代码)
数据准备:1、安装好request库,lxml库2、URL地址:3、数据要存放的文件夹位置D:\code。
·
目录
数据准备:
1、安装好request库,lxml库
2、URL地址:
https://movie.douban.com/top250
3、数据要存放的文件夹位置(注意每个人放的不一样,下面是我放的位置)
D:\code\movie4.txt
步骤及具体代码如下:
第一步 导包
# 导包
import requests
from lxml import etree
第二步 发起请求,设置编码格式
设置编码格式的目的是把r.text的内容变为汉字展示。 到这一步可以执行看一下,确认r.text内容里没有乱码。 如果出现乱码,就需要修改成其他编码格式。
# 发起get请求
url='https://movie.douban.com/top250'
r=requests.get(url,headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36'})
r.encoding='utf-8'
print(r.text)
第三步 调用etree和xpath方法转换数据
到这一步执行看一下,转换的数据是否为汉字
# 用etree方法转换数据
xp=etree.HTML(r.text)
remark_num=xp.xpath('//ol/li/div/div/div/div/span/text()') # 参加评论的人数
remark_content=xp.xpath('//ol/li/div/div/div/p/span/text()') # 评论内容
movie_name=xp.xpath('//ol/li/div/div/div/a/span/text()') # 电影名字
print(remark_num)
print(remark_content)
print(movie_name)
第四步 用for循环和zip函数把数据写入文件
这里【\n】表示换行符,zip( )函数可以把多个可迭代对象打包成元组
for r1,r2,r3 in zip(remark_num,movie_name,remark_content):
with open(f'D:/code/movie4.txt','a',encoding='utf-8') as f:
f.write(r1)
f.write('\n')
f.write(r2)
f.write('\n')
f.write(r3)
最后看一下代码执行的效果

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)