使用Ruby
和Watir
0,我可以像执行右mouse-click
和“save page with name
”一样保存网页吗?
我需要从脚本中保存当前的网页。
答案 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
不确定这是否会保存页面的所有元素。
希望这有点帮助!