Python爬取CSDN文章评论

        最近在学习Python爬虫,但没有什么完整的学习路线,就通过一些比较简单的小实例来积累经验,毕竟是为了毕设而已。上次爬取了京东的商品评论(京东),这次来试着爬取CSDN的文章评论。

        以前爬取过CSDN文章的名字和阅读数,这些信息是存在静态网页中的,直接将页面get下来就可以提取出这些简单的信息。但是评论这种信息一般都存放在json文件中,通过ajax来控制,在静态页面中无法直接提取。所以我们还是老方法,打开网页的审查功能,在network中的json或XHR里寻找我们所要的评论文件。

        首先在首页挑一篇评论量不少的文章,然后按F12来查看页面的源代码,再点击network后刷新一下。最后在XHR中寻找与评论相关的文件:

        就是这几个文件,是json形式存储的评论内容,我们在右侧的header中可以看到它们的URL,其中page参数控制页数。弄清楚之后就可以开始写代码了

import urllib.request
import json
headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36',
        'Referer': 'https://blog.csdn.net/qing_gee/phoenix/comment/list/104085756?page=1&size=10&tree_type=1'
    }
for i in range(1,5):
    url = "https://blog.csdn.net/qing_gee/phoenix/comment/list/104085756?page="+str(i)+"&size=10&tree_type=1"
    request = urllib.request.Request(url=url,headers=headers)
    content = urllib.request.urlopen(request).read().decode('gbk')
    obj = json.loads(content)
    data=obj['data']['list']
    for j in data:
        print(j['info']['Content'])

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章