按照client.接口名.get(请求参数)的方法获取API,获取API后的规格可在接口详情中查看,文档中有给出返回结不雅的示例。
文档中也给出了关键数据的json接口名称。
如不雅我们要获取微博评论的内容,只须要调用text接口即可。
- for st in r.comments:
- text = st.text
2.微博爬虫
经由过程调用新浪微博API的方法,我们就可以简单获取单条微博的评论信息了,为啥说简单呢,因为人红信息贵啊!你认为大年夜V的微博就这么免费的给你API调用了吗,非认证应用开辟者单日只能请求几千次API,这对像老薛如许单条微博几十万评论的大年夜V来说…太少了(TT)
所以捏,照样要写微博爬虫。
正所谓,亲信知彼百战不殆,新浪作为大年夜厂,怎么说也是身经百战,必定是经历了无数场爬虫与反爬之间的┞方争,必定有着健全的反爬策略。正所谓,劲敌面前,绕道而行,有位大年夜佬说得好,爬网站,先爬移动端:https://m.weibo.cn/
登录微博后,进入到老薛回应P图事宜的微博中去,_(:зゝ∠)_老薛啊,怪我,怪我来得太晚了,点进去的时刻已经有70w+的评论了(截止至发文当天已经100w+的评论了),可以看到安静的微博下粉丝们不安的心…
这似乎代表了,本次分析的结不雅将…并没有什么卵用。产生这种工作,米酱也不想的…做人呢…最重要的是要高兴…米酱不会写算法啊,米酱竽暌癸文也不好啊,米酱真的做不到啊(๑°⌓°๑)…
评论里包含了热点评论和最新评论俩种,但无论是哪种评论,持续往下翻网址都不会变更。江湖惯例(不懂江湖惯例的去看我之前的文),chrome浏览器右键“检查”,不雅察network变更。
大年夜network的xhr文件中,可以得知热点评论的变更规律是:
- 'https://m.weibo.cn/single/rcList?format=cards&id=' + 单条微博id + '&type=comment&hot=1&page=' + 页码
最新评论的变更规律是:
- 'https://m.weibo.cn/api/comments/show?id=' + 单条微博id + '&page=' + 页码
媒介:本文重要涉及常识点包含新浪微博爬虫、python对数据库的简单读写、简单的列表数据去重、简单的天然说话处理(snowNLP模块、机械进修)。合适有必定编程基本,并对python有所懂得的盆友浏览。
打开https://m.weibo.cn/single/rcList?format=cards&id=4154417035431509&type=comment&hot=1&page=1 就可以看到热点评论的json文件。
接下来就是套路了,假装浏览器header,攫取json文件,遍历每一页…这都不是重点!并且这些我以前都讲过~直接上代码~这里开端是py3的代码了~
- import re,time,requests,urllib.request
- weibo_id = input('输入单条微博ID:')
- # url='https://m.weibo.cn/single/rcList?format=cards&id=' + weibo_id + '&type=comment&hot=1&page={}' #爬热点评论
- url='https://m.weibo.cn/api/comments/show?id=' + weibo_id + '&page={}' #爬时光排序评论
- headers = {
- 'User-agent' : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:55.0) Gecko/20100101 Firefox/55.0',
- 'Host' : 'm.weibo.cn',
- 'Accept' : 'application/json, text/plain, */*',
推荐阅读
国内最火的 HTML、CSS、JavaScript 开源项目 Top 榜,你知多少?
操作体系:跨平台 对于开辟者而言,想要着手前端开辟,HTML、CSS 和 JavaScript 是三项必备的基本技能。而若何事半功倍地控制好这些常识?经由过程懂得当下火热的开源项目不乏为最佳进修姿>>>详细阅读
本文标题:如何科学地蹭热点:用python爬虫获取热门微博评论并进行情感分析
地址:http://www.17bianji.com/lsqh/37761.html
1/2 1