ruby watir, чтобы получить HTML страницы - PullRequest
7 голосов
/ 16 февраля 2012

Я просмотрел примеры на этих страницах

http://watir.com/examples/ http://wiki.openqa.org/display/WTR/Examples

Я до сих пор не вижу простого примера получения html страницы.

browser = Watir::Browser.new
browser.goto 'mysite.com'

Я пытался

puts browser.text

Кажется, не работает.

Спасибо

Ответы [ 4 ]

21 голосов
/ 16 февраля 2012

Это должно сделать это:

puts browser.html
2 голосов
/ 01 марта 2015
puts browser.html

Вернет все html, если вы хотите печатать только активные объекты, вы можете использовать:

puts browser.show_active

Аналогично, если вы хотите печатать только ссылки, вы можете использовать:

puts browser.show_links
1 голос
/ 27 марта 2013

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]')
0 голосов
/ 01 марта 2015

puts browser.html вернет все объекты на странице. Если вам нужны только активные объекты, вы можете использовать путы browser.show_active аналогично, если вы хотите, чтобы отображались только ссылки, вы можете использовать путы browser.show_links, которые будут отображать все ссылки на странице.

...