Как настроить пользовательский агент в ruby - PullRequest
18 голосов
/ 27 апреля 2011

У меня есть задача протестировать различные пользовательские агенты на URL с помощью автоматизации. Я использую ruby ​​для кодирования, и я пытался установить пользовательский агент, используя следующий метод, но он, похоже, не распознает пользовательский агент.

@http = Net::HTTP.new(URL)
response = @http.request_get(URL, {'User-Agent' => useragent})  

Есть ли другой способ сделать это, или что я делаю не так?

Ответы [ 3 ]

25 голосов
/ 27 апреля 2011
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

Прекрасно работает для меня.

17 голосов
/ 27 апреля 2011

Также еще один, который работает для меня:

require 'open-uri'
html = open('http://your.site.com/the/page.html', 'User-Agent' => 'Ruby').read
puts html

Надеюсь, это поможет вам.

2 голосов
/ 06 марта 2012

Включенный Net :: HTTPHeader имеет метод initialize_http_header :

@http = Net::HTTP.new(URL)
@http.initialize_http_header({'User-Agent' => useragent})
response = @http.request_get(URL)  

НТН

...