推特上有很多有影响力的大V做一些白名单的活动,只要完成关注点赞转推就有机会获得白名单,很多小伙伴每天做很多这样的任务,但是从来都没被抽中过,原因很简单,机器人太多了,那么你想不想也要一个自己的机器人呢?
做一个推特机器人,自动完成白名单任务。
白名单任务大致有:关注,点赞,转推。(太复杂的不在本次教程之内)
任务拆解:
1,关注功能
2,点赞功能
3,转推功能
除以上功能还需要找到发白名单活动的推文。
一般白名单活动的推文中会有以下几个关键字:
Follow,Like,RT,Tag,Retweet,FOLLOW,LIKE,RETWEET,TAG,关注,转推,喜欢
机器人所要做的事就是 认证→ 找推文→ 关注→ 点赞→ 转推→ 找下一条推文
以下是设计流程图:
需要调研四个功能,
只要你学习过tweepy的话,认证和找推文是tweepy最基本的功能。
以下代码,能完成认证,然后打印出当前时间点home上展示的第一条推文:
执行结果(红框内就是第一条推文):
这里可参照tweepy的API文档:get-tweet-timelines
但是有了推文,我不知道是谁发的哪条推文,我就不知道关注谁,给哪条推文点赞,和转推哪条推文?
先解析一下一条推文必要的属性
我们需要的一条推文的最基本元素有:用户标识(screen_name),推文ID,推文内容
那么这条推文的基本信息如下:
重新改一下代码:
执行结果中想要的信息都出来了:
有了上面取得的用户标识(screen_name),就很容易做关注了。使用以下API就可以关注了。
api.create_friendship(screen_name=screen_name)
API文档: api.create_friendship()
先找到一个未关注的人(红框中文字就是用户标识,也就是screen_name)
执行以下代码,
成功关注了
点赞需要知道推文的id,然后使用以下代码
api.create_favorite(id=tweet.id_str)
还记得上面的这个推文吗?
推文ID是:1496107063281283078
执行以下代码:
执行代码后,推文被点赞了
转推使用以下代码:
api.update_status(
'转推这条推文',
attachment_url="https://mobile.twitter.com/mirror_alerts/status/1496107063281283078")
执行完以上代码后:
使用简单python函数就可以找出有白名单活动的推文,触发条件后去做关注,点赞,转推就可以了。
把以上的功能组合起来就可以实现简单的机器人了,这里我只是抛砖引玉,剩下的工作就交给你们了。
如果你觉得对你有用
请关注我的mirror: https://mirror.xyz/zlexdl.eth
和关注我的推特:https://twitter.com/zlexdl
我的Notion地址:https://zlexdl.notion.site/f4aa875aa7be4ccca3918a783c499959
我的Medium地址:https://medium.com/@zlexdl.eth