Nokogiri没有从Watir加载"浏览器"

gha*_*hal 1 ruby watir nokogiri web-scraping watir-webdriver

到目前为止我有这个:

require 'watir-webdriver'
require 'date'
require 'nokogiri'

browser = Watir::Browser.start 'https://example/ViewReport.aspx'

browser.link(:text, 'Combined Employee Performance Report').click

today = Date.today
yesterday = today.prev_day.strftime('%m' '%d' '%Y')

t = browser.text_field :id => 'UC255_txtStart'
t.set yesterday

t = browser.text_field :id => 'UC255_txtEnd'
t.set yesterday

btn = browser.button :value, 'Run Report'
btn.exists?
btn.click

page = Nokogiri::HTML.parse('browser')
links = page.css("a")
puts links.length
Run Code Online (Sandbox Code Playgroud)

当我尝试解析browserWatir用于站点URI的变量时,它给了我一个空白的HTML页面.

Jus*_* Ko 12

问题

当你这样做

page = Nokogiri::HTML.parse('browser')
Run Code Online (Sandbox Code Playgroud)

你要求Nokogiri解析字符串'browser'.

解

你真正要解析的是浏览器中的html.

要获取浏览器的html,您可以:

browser.html
Run Code Online (Sandbox Code Playgroud)

所以要解析它,你会这样做:

page = Nokogiri::HTML.parse(browser.html)
Run Code Online (Sandbox Code Playgroud)