我正在创建一个通过不同网站进行解析的Web应用程序,例如,如果您在应用上搜索“stackoverflow”,我们将搜索多个网站,google,yahoo,bing,stackoverflow等。为了解决我需要的事实为我决定通过HTML解析的每个网站使用api,到目前为止它工作正常。但是我知道如果谷歌这样的网站从同一个IP地址得到几个异常快速的请求它们只会阻止该IP,那么我想要做的就是使用用户IP并将其发送到谷歌等应用程序中认为用户发起了请求。我想到了几种方法,例如:让javascript启动请求,并发送回html,但它看起来像是一个拖累,看到我已经在ruby中编写了解析器,我真的不觉得2个单独的调用会那么高效。因此,如果有人知道如何通过ip欺骗或其他黑客来实现这一点,我将永远感激。感谢
答案 0 :(得分:0)
您可以使用代理服务器库,但这样做成本很高。
就个人而言,我会使用API,因为我知道我正在以批准的方式做事,而不用担心试图绕过他们的会话嗅探算法。
你采取的“捷径”可能比使用他们的API慢,特别是当你考虑重写代码的时间时。尝试处理HTML抓取是一场持续的战斗,因为他们都会改变他们的HTML布局,打破你的刮刀。如果有的话,他们的API会变得更慢,更不频繁,所以你的代码会嗡嗡作响。