我在Ruby中编写一个脚本,使用大量搜索查询搜索搜索引擎。我希望这个脚本在用户使用时保持匿名。到目前为止,脚本将更改用户代理并使用随机标头。我应该使用某种方式或某种搜索引擎保持匿名吗?
我见过DuckDuckGo是一个好的开始,它也有一个API,因为它显然没有记录数据和使用Tor,但如果我想使用多个搜索引擎怎么办?例如,使用多个线程来抓取多个搜索引擎,并在所有引擎上保持匿名。
我该如何做到这一点?
我知道Rubys代理功能,我只是不完全确定如何使用它们是另一个问题。
答案 0 :(得分:2)
如果你想在互联网上匿名,最好的选择之一是tor。您可以自己使用它并访问任何网站
首先你必须连接到tor网络
tor --SOCKSPort 9050
然后你可以使用这个gem:https://github.com/astro/socksify-ruby
匿名访问任何网站:
require 'socksify/http'
require 'net/http'
Net::HTTP.SOCKSProxy('127.0.0.1', 9050).start('some.website.com', 80) do |http|
http.get('/')
end
如果您出于安全原因需要匿名,请阅读tor文档,如果您想正确使用它,它是完整且重要的。
目标网站可以很容易地知道来自网络的流量(但不知道流量来自哪里),爬行时合理,你不希望网站管理员阻止...
答案 1 :(得分:0)
Tor是一个不错的选择,如果你每天都想要一些请求,但是大多数搜索引擎都有Tor传出IP被列入黑名单,所以我觉得你不会享受很好的旅程。如果您可以为可以保持抓取活动匿名的服务支付一些费用并避免处理代理的麻烦,那么我建议使用ProxyCrawl API Anonymous Crawler Proxy。
API易于使用,可以免费试用并支持数百万个网站,价格随你付费。