为什么我们需要带有mechanize对象的user_agent_alias?

时间:2013-01-22 20:36:17

标签: ruby mechanize-ruby

我只想知道有关mechanize的一些信息,并从互联网上找到以下代码:

require 'mechanize'
require 'logger'
agent = Mechanize.new
agent.user_agent_alias = 'Windows IE 9'
agent.follow_meta_refresh = true
agent.log = Logger.new(STDOUT)

请问任何人,当user_agent_alias本身是浏览器时,请解释为什么需要follow_meta_refreshmechanize

1 个答案:

答案 0 :(得分:4)

Mechanize不是一个浏览器。它是一个页面解析器,为您提供足够的方法,使您可以轻松/方便地浏览网站。但是,它绝不是一个浏览器。

user_agent_alias在运行和发出页面请求时设置Mechanize的签名。在您的示例中,它试图通过伪装成" IE 9"来欺骗网站,但该签名并不会欺骗任何嗅探User-Agent标头的系统。

follow_meta_refresh,你应该花时间搜索" meta"标签用"刷新"参数。找到它是微不足道的,然后你就会理解。或者只是read the documentation