我正在尝试抓取某个网站,但我需要使用代理才能被禁止。
proxies.each do |proxy|
proxy.delete '""'
break if @doc = Nokogiri::HTML(open(pre, :proxy => proxy )) rescue nil
end
我在proxies
数组中有一个工作代理列表。 pre
是网址。我没有回复此代码,只是零。如果我用下面的代码替换它,它可以工作,但它有IP禁止的风险:
doc = Nokogiri::HTML(open(pre))
有什么想法吗?
答案 0 :(得分:1)
问题出在您的代理定义中。不幸的是,因为您没有向我们展示您的代码的完整示例,我们无法帮助您。
记录正确的定义:http://www.ruby-doc.org/stdlib-2.0/libdoc/open-uri/rdoc/OpenURI/OpenRead.html