分两步:
一、对网址进行解构化,比如之前的网址是:
https://movie.douban.com/review/9936402/?start=0
发现其中的最后一个数字0是有规律的上涨,有的是20、20 的上涨,封顶是327页(后期也可以自动提取)
把网址解构化为
url = 'https://movie.douban.com/review/9936402/?start={}'.format(pageNum*20)
使用的是一个for循环,初始为0,记住这是第一次循环,接着写入。
二、第二次for循环一定要在第一次目录下,实现两个爬取的内容叠加。
with open('C:/Users/Administrator/Desktop/新建文本文档.txt','w',encoding="utf-8")as f:
for n in range(len(result)):
jieguo = "用户@" + result[n] + "@发表:" + result2[n]
print(jieguo)
f.write(jieguo+'\n')#写入数据
下面是一个总的代码:
import requests
from lxml import html
for pageNum in range(327):
url = 'https://movie.douban.com/review/9936402/?start={}'.format(pageNum*327)
page=requests.Session().get(url)
tree=html.fromstring(page.content)
result=tree.xpath('//div[@class="content report-comment"]//div[@class="header"]/a/text()') #需要获取的数据
result2=tree.xpath('//div[@class="content report-comment"]//p[@class="comment-text"]/text()')
n = 0
with open('C:/Users/Administrator/Desktop/新建文本文档.txt','w',encoding="utf-8")as f:
for n in range(len(result)):
jieguo = "用户@" + result[n] + "@发表:" + result2[n]
print(jieguo)
f.write(jieguo+'\n')#写入数据











网友评论