【发布时间】:2020-03-04 00:12:10
【问题描述】:
我正在尝试使用 httparty 向具有代理的网站发出请求,如下所示:
def self.fetch_page_with_html_response(url, proxy_id)
proxy = Proxy.find(proxy_id)
request_options = {
http_proxyaddr: proxy.url, http_proxyport: proxy.port, http_proxyuser: proxy.username, http_proxypass: proxy.password,
headers: {"User-Agent" => proxy.user_agent}
}
response = HTTParty.get(url, request_options)
response
end
在某些网站上,我的请求要么挂起,要么返回一个错误页面,该网站阻止我获取该页面。
当我在 Chrome 浏览器中使用 SwitchyOmega 之类的扩展程序使用这些相同的代理设置时,请求会顺利通过并加载页面。
是否有任何原因导致我的网络服务器阻止了请求,但没有通过我的浏览器?
我什至使用相同的用户代理进行了测试,并提供了与我的浏览器发送的完全相同的标头。
【问题讨论】:
标签: ruby-on-rails ruby proxy httparty