我目前正在创建一个程序,该程序基于不断变化的变量,连接到网站,并收集信息。它必须连接到网站最多400次。在一定数量的连接后,主题网站似乎显示空白屏幕,大约10-30。有没有人知道找到连接之间等待多长时间的最佳方式?
public static String pullString(int id) {
return null;
}
答案 0 :(得分:0)
我无法下班,但谷歌runescape api
。他们有一个here,我敢打赌他们希望你使用它。
答案 1 :(得分:0)
一旦它开始阻止你,它最终会让你重新连接吗?您可以使用某种算法来动态查找再次尝试的速度。
您可以考虑类似于TCP拥塞控制的操作:从连接之间的一些等待时间开始。成功完成后,将等待时间减少一个常量。当您收到错误时,请将等待时间加倍(或乘以常数)。
但是,很可能他们正在做的事情比限速连接更复杂。如果不知道你需要绕过什么,就很难知道如何绕过它。答案 2 :(得分:0)
如果网站在达到某个限制后给你随机阻止时间,则几乎不可能找到最佳等待时间。我认为你最好的办法是使用一个http代理池以循环方式访问网站。虽然这不是很好......但从技术上讲,如果它在一定量的流量后阻止你,它应该是以编程方式访问网站的最佳方式。
以下是有关如何使用代理的链接:http://docs.oracle.com/javase/6/docs/technotes/guides/net/proxies.html
你也可以使用更简单的HttpClient。
尝试谷歌,你可以找到很多免费的代理服务器列表。