我设法让我的机器人解析了提及日期的正确方法。例如,如果用户用“提醒09/20/2019”或其他任意随机日期提及我的机器人,则会以日期测试成功进行响应。
我当前遇到的问题是,我希望我的机器人仅在请求的日期答复。例如,如果用户用“提醒10/1/2019”提及我的机器人,我希望我的机器人在2019年1月1日以“日期测试成功”响应。
如果我的问题没有得到足够清楚的解释,我可以做得更深入。
我当前正在使用的代码在这里:
> # Extended tweet mode is for showing longer tweets in mentions
mentions = api.mentions_timeline(tweet_mode='extended')
for tweets in reversed(mentions):
date_search_match = re.compile(r"(?:reminder|Reminder)\s\d{2}/\d{2}/\d{4}")
if date_search_match.search(tweets.full_text)
api.update_status(f"@{tweets.user.screen_name} Date Test Successful")
答案 0 :(得分:0)
您可以将日期存储在数据库中,然后每天使用python调度程序包(如github.com/dbader/schedule)查询一次提醒。
例如:
import schedule
import time
def job():
print("I'm searching the DB for today's reminders...")
<logic for querying the DB>
print("and tweeting out the reminders...")
<logic for tweeting the reminders with tweepy>
schedule.every().day.at("10:30").do(job)
while True:
schedule.run_pending()
time.sleep(1)
或者您可以在cron
作业上运行python脚本。