所以我试图为我运行的一个小的subreddit写一个可执行的JAR。
我有一个帖子,Jsoup连接并读取该页面上的所有URL。在另一种方法中,它然后连接到所有这些URL(只是帖子上的注释)并从注释中获取HTML并将它们保存到HashMap。
这很好但是我收到了429 HTTP错误。所以要解决这个问题,我加了一个短暂的5秒等待。现在我得到STRING
"读取超时"。一旦我将时间缩短到3秒,我就会在两者之间蹦蹦跳跳。
现在我用Python运行一些Reddit机器人,我能够提出比我在这里做的更多的请求。我实际上有一个机器人每分钟发出数千个请求。所以我知道可以提出这些要求。
我的问题基本上是,我如何能够向Reddit发出多个请求并避免429 HTTP错误?我正在使用Jsoup来连接和阅读HTML。
虽然我确定通过连接到Reddit。他们的OAuth2 API将解决这些问题,我不知道如何在Java中实际使用OAuth2(我实际上在Python中使用了一个包装器,因此可以说我根本不知道)并且我不会# 39;不知道如何在Jsoup中使用它。
答案 0 :(得分:0)
我的问题基本上是,我如何能够向Reddit发出多个请求并避免429 HTTP错误?
你自己回答:
虽然我确定通过连接到Reddit。他们的OAuth2 API将解决问题,
如the API documentation中所述,如果使用OAuth进行身份验证,则每秒会获得两倍的请求。
您是否了解过如何在Java中处理OAuth流程的示例?
您可能还会发现使用the wrapper libraries之一更容易用于Java,而不是自己处理所有这些。
答案 1 :(得分:0)
只需设置标题即可轻松传递
User-Agent: super happy flair bot by /u/spladug