突然觉得,现在发微博已经成为当代青年的潮流,或分享自拍美照,或分享美食美景,小编的女朋友也不例外,平时爱分享一些我俩生活的趣事。
但是她最近开始给我抱怨我从来不给她的微博评论,我作为骨灰级“暖男”肯定要有所行动啊,于是我灵机一动,用python写了个微博秒评的脚本,不管她半夜还是清晨,只要发了微博,就肯定能秒评,再也不怕她抱怨我不评论了。
01
整体思路
首先用爬虫里面的著名的requests库写个定时循环爬取个人主页的程序,检测女友有没有发微博,若没有,则继续循环;若有,则调用微博api接口,给该条微博评论。让女友迅速的注意到我,嘿嘿~~
02
动手开始
第一步:找到好友微博更新接口,定时循环爬取
以移动端网页微博为例,登录微博后,打开流量分析工具,更新网页,找到好友微博接口
返回的是json格式数据,我们需要的是该条微博的id和发微博的好友的微博名称,一共有20条好友微博数据,已经够了,我们只需要最新的就行,它的请求地址为
不需要带什么参数,但是用requests模拟请求时要把自己的cookie带上,代码如下
最后需要对每个微博名称进行检测,若是我们想要评论的人,则进入第二步;否则重新请求。
03
调用API接口
第二步:调用微博api接口,给微博评论
1).首先我们需要在微博开放平台申请个人接口
网址为https://open.weibo.com/apps
2).登录后需要身份验证
3).接着在点击微连接、网站借助接入、立即接入
4).最后按要求填写,创建应用即可
最后在应用信息中可以找到App Key和App Secret值
5).请求access_token值
然后要根据平台返回的App Key和App Secret值请求获得access_token值
代码如下:
首先需要安装sinaweibopy3,这是python调用微博必备的软件开发包,在pycharm中即可完成。请求url是固定接口,这里不必纠结,最后会返回1个新的url
该地址是个重定向地址,将其在浏览器中打开
发现其地址发生了变化,我这里浏览器中已经登录了个人微博,否则还会提示重新输入账号密码。重点关注一下重定向后网址的code值,这个值很快就会失效,我们后续需要用此值来请求获得access_token值,网上的教程都是让手动输入,太low了,我们可以用requests库搞定
此次请求仍需要已登录个人微博的cookie值,用会话请求的方式获得重定向后的网页地址,并最终取得code值。
04
提交评论
经常上面的几步,我们准备工作已经准备就绪,下面就是准备提交评论了。
用获得的code值请求获得access_token值
根据微博开放平台评论接口参数提示
我们需要access_token值、评论内容、需要评论微博的ID三个必备参数,这些以上都已解决,最后用post方式提交即可
提交完毕后就自动给微博评论了,当然本教程仅供给大家学习Python参考使用。因为兴趣是学习Python最好的途径,我们后面还有一些趣味的案例来帮助大家学习Python,大家不能请求太频繁哦,而且评论次数也是受限制的。
需要源码后台输入:【菜鸟哥】
最后推荐一下我们菜鸟学Python在B站的学习资料,菜鸟学Python在B站的官方名字为 “菜鸟玩Python”。目前已经录制了6个视频,累计有1.2万阅读。
用Python做一个弹球游戏
10行Python代码实现美图秀秀
用Python做一个元宵节灯谜
我用Python集齐五福
50行代码,用Python批量做海量小姐姐的素描图
用Python做一个缩放自如的圣诞老人
点击阅读原文,直达菜鸟玩Python B站