在我收到以下错误之前,我的机械化脚本运行了大约3个小时:
C:/Ruby193/lib/ruby/gems/1.9.1/gems/net-http-persistent-
2.7/lib/net/http/persistent/ssl_reuse.rb:29:in `initialize':
A connection attempt failed because the connected party did not properly
respond after a period of time, or established connection failed because
connected host has failed to respond. - connect(2) (Errno::ETIMEDOUT)
我认为这是因为它已经运行了2-3个小时,但是想知道是否有人对错误有任何特别的见解
这是我的剧本
require 'rubygems'
require 'mechanize'
def next_button(web_page)
web_page.page.search('.next a').each do |next_button|
web_page.click(next_button)
web_page.page.search('.listing_content').each |info|
get_info(info)
end
next_button(web_page)
end
end
def get_info(info)
infos = info.at_css('.url').text.strip
address = info.css('.street-address').text.strip
city = info.css('.locality').text.strip
state = info.css('.region').text.strip
zip = info.css('.postal-code').text.strip
end
web_page = Mechanize.new
web_page.user_agent_alias = "Linux Firefox"
web_page.get(HOME_URL)
web_page.page.search('.page-navigation a').each do |pagination_link|
web_page.page.search('.categories-list a').each do |link|
web_page.click(link)
web_page.page.search('.listing_content').each do |info|
get_info(info)
end
next_button(web_page, worksheet)
end
web_page.click(pagination_link)
end
提前感谢您的帮助。
答案 0 :(得分:0)
在我看来,持久连接比它们的价值更麻烦。当我遇到这种情况时,我会检查以确保我有最新版本的机械化,如果它仍然发生,我会回到机械化1.0.0,它不使用持久连接。