铁轨上的红宝石-使用机械化宝石和Nokogirl宝石



我正在尝试抓取一个需要身份验证才能在id为#cellTotal的页面上获取元素的网站。

现在,使用机械化我已经登录到我想访问的页面,但使用基本的Nokogiri功能,如:

@selector = page.css("#cellTotal").text

给我这个错误:

undefined method `css' for #<Mechanize::Page:0x61234f8>

以下是我目前所拥有的:

agent = Mechanize.new
agent.get("example.com")
agent.page.forms[0]["username_field"] = "username"
agent.page.forms[0]["password_field"] = "password"
agent.page.forms[0].submit
@selector = agent.page.css("#cellTotal").text

如何在此页面上选择元素?

您可以使用page.parser来访问底层Nokogiri对象。

http://mechanize.rubyforge.org/Mechanize/Page.html#method-i-parser

require 'mechanize'
agent = Mechanize.new
agent.get("http://stackoverflow.com/questions/23064821/using-the-mechanize-gem-with-the-nokogirl-gem/")
agent.page.parser.class
# => Nokogiri::HTML::Document
agent.page.parser.css("#answer-23065003 .user-details a").text
# => "akatakritos"

相关内容

  • 没有找到相关文章

最新更新