如何在ruby中设置自定义用户代理
我的任务是通过自动化测试URL上的不同用户代理。 我正在使用ruby进行编码,我一直在尝试使用以下方法设置用户代理,但它似乎无法识别用户代理。
@http = Net::HTTP.new(URL) response = @http.request_get(URL, {'User-Agent' => useragent})
有没有其他方法可以做到这一点,或者我做错了什么?
http = Net::HTTP.new("your.site.com", 80) req = Net::HTTP::Get.new("/path/to/the/page.html", {'User-Agent' => 'your_agent'}) response = http.request(req) puts response.body
对我很有用。
另一个对我有用的:
require 'open-uri' html = open('http://your.site.com/the/page.html', 'User-Agent' => 'Ruby').read puts html
希望这会帮助你。
包含的Net :: HTTPHeader具有initialize_http_header方法:
@http = Net::HTTP.new(URL) @http.initialize_http_header({'User-Agent' => useragent}) response = @http.request_get(URL)
HTH
- TypeError:无法将Net :: HTTPOK转换为String
- 如何使用Ruby在文本文件中搜索完全匹配的字符串?
- Ruby SSL握手没有收到服务器Hello回来 – 使用代理Net :: HTTP
- OpenSSL :: SSL :: SSLError:SSL_connect SYSCALL返回= 5 errno = 0 state = SSLv3读取服务器hello A
- Capybara增加最大允许页面加载时间
- Rails – 向另一台服务器发送多个http请求
- 在Rails中使用NetHTTP来命中Rails
- 使用Net / http发布JSON格式的Ruby数据
- 为什么我得到Net :: HTTP“请求路径为空”错误?