如何利用Python实现实时监控别人微博动态.doc
《如何利用Python实现实时监控别人微博动态.doc》由会员分享,可在线阅读,更多相关《如何利用Python实现实时监控别人微博动态.doc(3页珍藏版)》请在三一文库上搜索。
1、如何利用Python实现实时监控别人微博动态前几个星期在写一个微博监控系统 可谓是一波三折啊 获取到微博后因为一些字符编码问题 导致心态爆炸开发中断 但是就在昨天发现了另外一个微博的接口一个手机微博的接口https:/m.weibo/ 经过一番测试后认为这个接口满足我的要求 就继续完成未完成的使命吧0x01 分析:这个接口直接访问的话会有一个302跳转到一个登陆界面也就是说这里需要先模拟登陆一下才可以访问到微博抓个包分析了一下发现只要用户名和密码正确既返回200且json部分的retcode会返回20000000少了验证码这一大坑 那模拟登陆就相当简单啦登陆完后访问用户主页 例如:https:
2、/m.weibo/u/3023940914可以在审查元素的Network模块看到 这里用了两个xhr来加载用户信息及微博信息分别是https:/m.weibo/api/container/getIndex?type=uid获取到第二个containerid参数访问第二个接口就可以获取到这个uid发布的微博了返回的是json格式的数据 用户的微博信息都在cards列表里每条数据的mblog数组里面 包括微博正文、图片、来源与时间等其中card_type标识的是微博类型 例如:文字微博 图片微博 视频微博 转发等 经过测试文字微博和图片微博的card_type标识都一样为9这里初步只开发监控文字和
3、图片微博的功能其实就是懒0x02 开发首先需要模拟登陆 后续的操作都需要基于登陆的格调来进行 也是需要在同个会话进行 可以使用requests.session()方法来完成代码片段:登陆完成后就可以拼接用户id访问前面说的第一个接口了访问完后再拼接containerid参数获取微博信息的json数据代码片段:这里把所有获取到的微博的id存起来 后面继续访问是发现有新的微博id不在这个列表里就证明是新发布的微博代码片段:将这些方法封装成了一个类 完整代码如下写了个一发现有新微博就发邮件提醒的功能 完整代码见Github地址 https:/github/naiquann/WBMonitor0x03 测试运行代码填写完相关的登陆信息及要监控的用户的id后这里写了一个心跳包 每三秒访问一次看看有没有新微博发布测试的时候这样比较方便 要是拿来用的话可以酌情增加间隔时间当有微博发布的时候大功告成啦 监控小姐姐的微博去喽
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 如何 利用 Python 实现 实时 监控 别人 动态
链接地址:https://www.31doc.com/p-3421913.html