我在谷歌上搜索并阅读了 ruby 手册,但我找不到通过 socks4 代理使用 WWW::Mechanize 和 NET::HTTP::GET 的方法。
我读到, WWW::Mechanize 是 UserAgent 模块的子类,因此 ->proxy() 方法可以工作。但是该手册只讨论了 http、ftp 和 gopher 代理。
任何想法如何支持socks4?以下是代码片段:
def get_request(url_in)
url = URI.parse(url_in)
req = Net::HTTP::Get.new(url.path, {"User-Agent" => $UserAgent})
res = Net::HTTP.start(url.host, url.port) { |http|
http.request(req)
}
return res.body
end
agent = WWW::Mechanize.new
agent.user_agent_alias('Windows Mozilla')
page = agent.get("urlhere")
post_form = page.form('post')