Ruby中的简单屏幕抓取程序,Selenium Webdriver抛出错误

Ruby中的简单屏幕抓取程序,Selenium Webdriver抛出错误,ruby,selenium,selenium-webdriver,Ruby,Selenium,Selenium Webdriver,我在实现一个简单的屏幕抓取程序时遇到了问题。 基本脚本如下: require 'selenium-webdriver' width = 1024 height = 728 @websites = Array.new file = open('websites.txt') file.each_line { |line| @websites.push line } @websites.each do |website| d = Selenium::WebDriver.for

我在实现一个简单的屏幕抓取程序时遇到了问题。 基本脚本如下:

require 'selenium-webdriver' 

width = 1024 
height = 728 

@websites = Array.new

file = open('websites.txt')

file.each_line { |line| @websites.push line }

@websites.each do |website|
    d = Selenium::WebDriver.for :firefox
    puts "Now going to:"+ " #{website}"
    d.navigate.to website 
    d.execute_script %Q{ 
    window.resizeTo(#{width}, #{height}); 
    } 
    d.save_screenshot("#{website.gsub('http://', '')}"+".png") 
    d.quit 
    sleep 10
end
selenium引发的异常:

ruby keepwatch.rb
Now going to: http://www.example.com/
/Users/Big_Bird/.rvm/gems/ruby-1.9.2-p320/gems/selenium-webdriver-2.31.0/lib/selenium/webdriver/common/driver_extensions/takes_screenshot.rb:18:in `initialize': No such file or directory - www.example.com/ (Errno::ENOENT)
.png
    from /Users/Big_Bird/.rvm/gems/ruby-1.9.2-p320/gems/selenium-webdriver-2.31.0/lib/selenium/webdriver/common/driver_extensions/takes_screenshot.rb:18:in `open'
    from /Users/Big_Bird/.rvm/gems/ruby-1.9.2-p320/gems/selenium-webdriver-2.31.0/lib/selenium/webdriver/common/driver_extensions/takes_screenshot.rb:18:in `save_screenshot'
    from keepwatch.rb:29:in `block in <main>'
    from keepwatch.rb:22:in `each'
    from keepwatch.rb:22:in `<main>'
ruby keepwatch.rb
现在我们来谈谈:http://www.example.com/
/Users/Big_Bird/.rvm/gems/ruby-1.9.2-p320/gems/selenium-webdriver-2.31.0/lib/selenium/webdriver/common/driver\u extensions/takes\u screenshot.rb:18:在“初始化”中:没有这样的文件或目录-www.example.com/(Errno::enoint)
.png
来自/Users/Big_Bird/.rvm/gems/ruby-1.9.2-p320/gems/selenium-webdriver-2.31.0/lib/selenium/webdriver/common/driver_extensions/takes_screenshot.rb:18:in'open'
来自/Users/Big_Bird/.rvm/gems/ruby-1.9.2-p320/gems/selenium-webdriver-2.31.0/lib/selenium/webdriver/common/driver\u extensions/takes\u screenshot.rb:18:in“保存屏幕截图”
来自keepwatch.rb:29:in'block in'
来自keepwatch.rb:22:in'each'
来自keepwatch.rb:22:in`'

我将非常感谢在这件事上能得到的任何帮助。

尝试向文件添加路径,并从末尾删除(www.example.com/)。如果不起作用,请尝试删除除文件名和扩展名之间的点之外的所有点


例如-d.save_screenshot(“./screenshot.png”)

你能发布一个websites.txt的示例吗?