试图做到这一点,以便每当有任何用户通过“测试”提及我的机器人时,它都会以“测试成功!”作为响应。问题是我想要它,因此我的机器人可以实时执行此操作,而无需不断运行该操作的代码。我假设我在Tweepy中使用了Streaming API,但是我对如何做到这一点感到困惑。我有点菜鸟,而且是编码的新手,所以请多多包涵。
我设法让机器人在用户提到它时以“测试成功”的方式回复,我运行了该程序。问题是,我不希望它用“测试成功”来回复,除非用户用“测试”提到我的机器人。
这是我的代码:
import tweepy
from keys import consumer_key, consumer_secret, access_token,
access_secret
# OAuth using the provided keys and tokens
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_secret)
# Creation of interface, with authentication
api = tweepy.API(auth)
class MyStreamListener(tweepy.StreamListener):
def on_status(self, status):
print(status.text)
myStreamListener = MyStreamListener()
myStream = tweepy.Stream(auth=api.auth, listener=myStreamListener)
phrase_to_check = 'Testing'
for phrase_to_check in api.mentions_timeline():
if not phrase_to_check:
pass
else:
api.update_status('@{} Testing
successful!'.format(phrase_to_check.user.screen_name))