跟着大佬学爬虫
本次爬虫代码是根据崔庆才大佬书中内容完成的,在此感谢崔大,顺便记录一下自己的苦逼学习经历吧。
如题,若要成功运行代码,请先安装MongoDB数据库。若实在是怕麻烦,那就自己改一哈代码,保存信息到本地文本文件也是可以的。
本次爬虫虽然是按照书中内容写的,但是当我完全按照书中所写却运行报错。调试了半天,发现是响应的数据格式有变,这不奇怪,毕竟书中代码也有些年头了嘛。最后改了一些代码成功运行。
注意事项:
构建URL的时候,因为页面使用了Ajax技术,所以使用了Chrome开发者工具进行XHR过滤,这样才能找出真正请求的页面URL
然后就是仔细观察响应内容格式,做好内容解析和提取
最后,写入到数据库
完整代码:
"""Ajax:微博前十页面爬取"""
import time
from urllib.parse import urlencode
from pyquery import PyQuery as Pq
import requests
from pymongo import MongoClient
# 基本URL,代表前半部分
base_url = 'https://m.weibo.cn/api/container/getIndex?'
# 构造请求头,page是可变参数
headers = {
'Host': 'm.weibo.cn',
'Referer': 'https://m.weibo.cn/u/2830678474',
'User-Agent': 'Mozilla/