@scheduler.scheduled_job("interval", minutes=3, id="twitter", misfire_grace_time=179)
async def now_twitter():
playwright, browser = await create_browser()
twitter_list = json.loads(dirpath.read_text("utf8"))
results = []
try:
for user_name in twitter_list:
# 检查单个用户状态
result = await get_status(user_name, twitter_list, browser)
results.append(result)
# 检查完一个用户后等待5秒再检查下一个
await asyncio.sleep(5)
if config_dev.twitter_website == "":
true_count = sum(1 for elem in results if elem)
if true_count < len(results) / 2:
config_dev.twitter_url = get_next_element(website_list, config_dev.twitter_url)
logger.debug(f"检测到当前镜像站出错过多,切换镜像站至:{config_dev.twitter_url}")
except Exception as e:
logger.warning(f"twitter 任务出错{e}")
finally:
await browser.close()
await playwright.stop()
但是如果用他的自建端会出很多429而且延迟很高,所以我用ai改了一下now_twitter