PRAW请求所有Subreddit帖子:收到401错误

时间:2017-03-31 17:42:31

标签: python-3.x praw reddit

我试图从2010年开始一直从一个subreddit抓住每一个帖子,特别是/ r / nosleep。

我抓住这些帖子的代码是通常的:

for submission in nosleep.submissions(end=int(time.time()):

它工作得很好,我已经检查了他们所有工作的凭据,并且它可以很容易地获得两年没有任何问题的帖子。发生的事情是我运行上面的for循环,并在最后的某个时刻,它返回401并崩溃整个程序。

我检查并确认了以下情况:

  • 它将从2010年到2011年抢占,它没有问题,它击中了subreddit的“开始”,并认为在subreddit开始之前禁止抓住帖子。
  • 我在每个循环上打印出reddit.auth.limits,并且都以None回复,所以我的请求免税额也没有用完。

围绕这个的唯一“黑客”是将工作分成两个for循环,将int(time.time())分成两个(或更多)部分,并像这样迭代每个部分:

for submission in nosleep.submissions(start=middle, end=int(time.time())):
for submission in nosleep.submissions(end=middle):

即使这样,它有时会返回401.我怀疑这是因为这个循环运行的时间长度,但我不知道。有没有人对新方法有任何建议,或者编辑PRAW源以适应?

2 个答案:

答案 0 :(得分:1)

尝试PRAW的最新开发版本(pip install --upgrade https://github.com/praw-dev/praw/archive/master.zip),因为解决此问题。

答案 1 :(得分:0)

对于将来的Google员工来说,多次输入错误密码也可能导致此问题。重置大约需要20分钟,然后它将再次起作用。