有没有最快的方法从一个选择的subreddit的“热门”类别使用PRAW获得一个随机帖子,因为我的代码可能需要3秒。我试着用randint
来缩小范围,但它没有改变任何东西,也不理想,因为我希望它有更大的范围。在
我使用discord.py来获取用户对subreddit的选择。在
到目前为止我发现的最好的方法是:
async def on_message(message):
reddit = connect_api() # Auth to the API
sub = message.content[8:] # subreddit choice from user
hot_results = reddit.subreddit(sub).hot()
random_num = random.randint(1, 100)
for i in range(0, random_num):
random_post = next(x for x in hot_results if not x.stickied)
我还试图将每个帖子附加到一个列表中,然后从中随机选择一个帖子,但显然这篇文章更长。在
互联网连接应该是相当好的,因为我是运行在一个视频处理系统。在
我已经在命令本身之外完成了api连接,以便在bot第一次启动时加载它(可能有助于提高速度)
这就是我随机选择的方式(我使用的是机密模块,而不是随机的,因为一些兼容性问题,但我认为它不会改变命令的速度)
^{pr2}$我已经将每个请求定时到多个子标题,从一篇文章中加载“picture+title”最多需要
0.8秒
希望这些能有所帮助!在
相关问题 更多 >
编程相关推荐