豆瓣电影短评爬虫

豆瓣电影短评爬虫

工具:Pycharm,win10,Python3.6.4

1.需求分析

豆瓣电影短评爬虫

需要爬取评论者的ID和评论内容,需求十分的简单。

2.爬虫思路

我们要的数据直接就在网页源码中,只需要获取网页源码,用正则匹配出我们要的信息即可。评论一共有5页,我们需要通过循环去构建5条url。最后数据写入txt中。

代码如下:

from urllib import request
import re

for i in range(0,6):
    print('正在获取第 '+str(i+1)+'页')
    k = i * 20
    # 构造url,进行爬虫
    url = 'https://movie.douban.com/subject/25822427/comments?start=' + str(k) + '&limit=20&sort=new_score&status=P'
    resp = request.urlopen(url=url)
    # 获取网页源码
    html = resp.read().decode('utf-8')
    #获取评论者ID
    names_pattern = re.compile('<a title="(.*?)"',re.S)
    names = re.findall(names_pattern,html)
    #获取短评
    texts_pattern = re.compile('<span class="short">(.*?)</span>',re.S)
    texts = re.findall(texts_pattern,html)
    duanping_file = open('duanping_file.txt', 'a',encoding='utf-8')
    for j in range(len(names)):
        print("用户:", names[j])
        print("短评", texts[j])
        duanping_file.write("用户:" + names[j]+"\n")
        duanping_file.write("内容:" +texts[j]+"\n")
    duanping_file.close()