网站调用新浪微博内容(Scrapy爬取豆瓣网站信息怎么破?如何破解HTTP请求 )
优采云 发布时间: 2021-09-26 00:05网站调用新浪微博内容(Scrapy爬取豆瓣网站信息怎么破?如何破解HTTP请求
)
一、回顾
当scrapy爬行豆瓣菜网站信息时,我们通过加载目标URL返回的响应直接获得所需的值。当我稍后爬网时知乎网站,我通过模拟登录输入目标URL,并通过返回的响应获得所需的值
这一次,我们将通过解析网站的HTTP请求来抓取所需的数据,以破解获取数据的API
二、找到微博用户的独特标识:oid
一般来说,当爬行网站时,首选m站,其次是WAP站,最后考虑PC站,因为PC站具有最多的验证。当然,这不是绝对的。有时,PC站拥有最完整的信息,而您只需要所有信息,因此PC站是您的首选。通常,m个站点以m开头,后跟域名。这一次,我们分析了微博的HTTP请求
注:
1)打开页面并单击“网络”选项卡时,将不会显示任何信息。当你打开页面时,我们需要刷新它
2)为了防止由于页面突然跳转而导致信息丢失,请务必勾选保留的*敏*感*词*框
在移动模式下打开网页
三、了解微博用户的微博内容API
在找到用户ID后,我们继续在网络上搜索API,即选择XHR进行过滤,并找到已发送的两个API请求。(API请求通常采用XHR格式,其他网页请求采用DOC格式)
通过XHR获取过滤后的API
我们检查两个API返回的数据,发现第一个API返回用户数据,第二个API返回微博内容数据。它们唯一的参数是containerid的值。通过对采集多个案例的分析,可以得出获取用户内容的容器ID为100505+oid,获取微博内容的容器ID为107603+oid
https://m.weibo.cn/api/container/getIndex?containerid=1005052803301701
https://m.weibo.cn/api/container/getIndex?containerid=1076032803301701
分析返回的API
我们在右边选择preview来预览JSON,点击卡片中的任何卡片,在mblog标签下就有我们想要的微博内容数据
我们继续观察到这个JSON中只有11条数据,因此我们滑到下一页,继续查看请求的API