教你开发一个简易的推特白名单机器人
0x6893
February 23rd, 2022

背景:

推特上有很多有影响力的大V做一些白名单的活动,只要完成关注点赞转推就有机会获得白名单,很多小伙伴每天做很多这样的任务,但是从来都没被抽中过,原因很简单,机器人太多了,那么你想不想也要一个自己的机器人呢?

前提:

技术栈:

  • python3
  • python类库:tweepy

一,需求分析:

做一个推特机器人,自动完成白名单任务。

白名单任务大致有:关注,点赞,转推。(太复杂的不在本次教程之内)

任务拆解:

1,关注功能

2,点赞功能

3,转推功能

除以上功能还需要找到发白名单活动的推文。

一般白名单活动的推文中会有以下几个关键字:

Follow,Like,RT,Tag,Retweet,FOLLOW,LIKE,RETWEET,TAG,关注,转推,喜欢

二,设计

机器人所要做的事就是 认证→ 找推文→ 关注→ 点赞→ 转推→ 找下一条推文

以下是设计流程图:

三,调研

需要调研四个功能,

  • 认证
  • 找推文
  • 关注
  • 点赞
  • 转推

1,认证和找推文

只要你学习过tweepy的话,认证和找推文是tweepy最基本的功能。

以下代码,能完成认证,然后打印出当前时间点home上展示的第一条推文:

执行结果(红框内就是第一条推文):

这里可参照tweepy的API文档:get-tweet-timelines

但是有了推文,我不知道是谁发的哪条推文,我就不知道关注谁,给哪条推文点赞,和转推哪条推文?

先解析一下一条推文必要的属性

我们需要的一条推文的最基本元素有:用户标识(screen_name),推文ID,推文内容

那么这条推文的基本信息如下:

重新改一下代码:

执行结果中想要的信息都出来了:


2,关注

有了上面取得的用户标识(screen_name),就很容易做关注了。使用以下API就可以关注了。

api.create_friendship(screen_name=screen_name)

API文档: api.create_friendship()

先找到一个未关注的人(红框中文字就是用户标识,也就是screen_name)

执行以下代码,

成功关注了


3,点赞

点赞需要知道推文的id,然后使用以下代码

api.create_favorite(id=tweet.id_str)

还记得上面的这个推文吗?

推文ID是:1496107063281283078

执行以下代码:

执行代码后,推文被点赞了


4,转推

转推使用以下代码:

api.update_status(
    '转推这条推文',
attachment_url="https://mobile.twitter.com/mirror_alerts/status/1496107063281283078")

执行完以上代码后:


5,找白名单活动的推文

使用简单python函数就可以找出有白名单活动的推文,触发条件后去做关注,点赞,转推就可以了。

四,开发实现

把以上的功能组合起来就可以实现简单的机器人了,这里我只是抛砖引玉,剩下的工作就交给你们了。


如果你觉得对你有用

请关注我的mirror: https://mirror.xyz/zlexdl.eth

和关注我的推特:https://twitter.com/zlexdl

我的Notion地址:https://zlexdl.notion.site/f4aa875aa7be4ccca3918a783c499959

我的Medium地址:https://medium.com/@zlexdl.eth

—— 来自 DFarm Club

Arweave TX
K9Y5jZREAnnQGtzRsa4oMjwiHlfmDKA7PCZSlUr0qnY
Ethereum Address
0x68934c69245CBE6E157859D23Fc6766c59ED28F9
Content Digest
-SLMZ8BPOIalMcxCwfxdMNIDsAF_0hplA1H0p38t37A