我查看了这些页面上的示例
http://watir.com/examples/ http://wiki.openqa.org/display/WTR/Examples
我仍然没有看到获取网页html的简单示例。
browser = Watir::Browser.new
browser.goto 'mysite.com'
我试过了
puts browser.text
似乎没有用。
由于
答案 0 :(得分:21)
这应该这样做:
puts browser.html
答案 1 :(得分:2)
puts browser.html
将返回所有的html,如果您只想打印活动对象,可以使用:
puts browser.show_active
同样,如果您只想打印链接,可以使用:
puts browser.show_links
答案 2 :(得分:1)
IE8,Ruby 1.9.3,Watir 3.0,WindowsXP
我需要在id =“numberCovered”的单元格中抓取文本。
<table cellpadding="0" cellspacing="0" class="thisThemeBodyColor"><tr style="height:22px;"><td id="numberCoveredlabel" style="cursor:default;" class="smallHeadingBlack" width="200">Number of individuals to be covered</td><td id="numberCovered" class="smallHeadingBlack" style="font-weight:bold;">1</td><input type="hidden" name="numberCovered" tooltip="" value="1" onpropertychange="variableAsTextChanged(this);"/></tr><tr><td id="numberSpouseslabel" style="cursor:default;" class="smallHeadingBlack" width="200">Number of spouses to be covered</td><td id="numberSpouses" class="smallHeadingBlack" style="font-weight:bold;">0</td><input type="hidden" name="numberSpouses" tooltip="" value="0" onpropertychange="variableAsTextChanged(this);"/></tr></table>
正如@icn所提到的,当你找不到合适的Watir内置方法时,原始页面源转储有时很好地作为后备。
- Update-- 上面提到的$ browser.html正在喷出空行,但这看起来很有效:
require 'nokogiri'
page_html = Nokogiri::HTML.parse($browser.html)
entry = page_html.css('td[id=numberCovered]')
答案 3 :(得分:0)
puts browser.html
将返回页面上的所有对象。如果您只想要活动对象,则可以使用puts browser.show_active
,如果您只希望显示链接,则可以使用puts browser.show_links
来显示页面上的所有链接。