是否可以将机械化::文件转换为机械化::P年龄



>我在使用 Mechanize gem 时遇到了问题,如何将 Mechanize::File 转换为 Mechanize::P age

这是我的代码段:

**link** = page.link_with(:href => %r{/en/users}).click

当用户链接单击时,它会转到带有用户列表的页面,现在我想单击第一个用户,但我无法实现这一点,因为链接返回机械化::文件对象

任何帮助,建议会很棒,谢谢

Mechanize 使用内容类型来确定应如何处理资源。有时,网站不会为其资源设置 MIME 类型。 Mechanize::File 是未设置的内容类型的默认值。

如果您只处理'text/html'则可以按照 Jimm Stout 的建议使用post_connect_hooks

agent = Mechanize.new do |a|
  a.post_connect_hooks << ->(_,_,response,_) do
    if response.content_type.empty?
      response.content_type = 'text/html'
    end
  end
end

只需使用 nokogiri 解析正文:

link = page.link_with(:href => %r{/en/users}).click
doc = Nokogiri::HTML link.body
agent.get doc.at('a')[:href]

相关内容

  • 没有找到相关文章

最新更新