如何在Watir中保存网页?

时间:2014-08-06 20:19:00

标签: ruby watir

使用RubyWatir 0,我可以像执行右mouse-click和“save page with name”一样保存网页吗?

我需要从脚本中保存当前的网页。

2 个答案:

答案 0 :(得分:4)

是的,您可以使用watir执行此操作。只需打开一个页面并将browser.html保存到您想要的任何目的地:

b = Watir::Browser.new :phantomjs    # I am using phantomjs for scripted browsing
b.goto 'http://google.com'
File.open('/tmp/google', 'w') {|f| f.write b.html }

答案 1 :(得分:0)

我不知道watir,但我知道使用Selenium Web Driver的方法是使用页面源方法。 在这里查看文档: http://selenium.googlecode.com/git/docs/api/rb/Selenium/WebDriver/Driver.html#page_source-instance_method

使用这个,你应该得到整个来源。

您现在可以通过创建新文件来保存源。我没试过,但你可以看一下。

driver = Selenium::WebDriver.for(:firefox)
driver.get(URL_of_page_to_save)
file = File.new(filename, "w")
file.puts(driver.page_source)
file.close

不确定这是否会保存页面的所有元素。

希望这有点帮助!