我有我的脚本登录并进入浏览器URL的地方,但是当它退出当前网页时它只是坐在那里并且不会重新启动循环。如何让循环实现完成并重新启动?
if (array[index]<min);
当脚本完成后,它只是坐在网页上......我正试图让它再次开始... 您会认为它需要每个名称,传递并返回到开头的URL。 谢谢你的帮助。
答案 0 :(得分:0)
看起来您可能没有恰当地调用browser.close
。在我的快速模拟测试中,如果我不这样做,我肯定会遇到奇怪的行为。您还使用了非惯用的Ruby循环。试试这个:
5.times do
File.open("yahoo_accounts.txt") do |email|
email.each do |item|
email, password = item.chomp.split(',')
emails << email
passwords << password
emails.zip(passwords) do |name, pass|
browser = Watir::Browser.new :ff
browser.goto "url"
#logs in and does what its suppose to do with the name and pass
browser.close
end
end
end
end
编辑:
或者,如果您希望完全相同的Watir::Browser
实例执行所有工作,请在主循环外部初始化和关闭。现在,您每次迭代Browser
生成一个新的emails.zip
实例,每email.each
次迭代次数,乘以while
循环的5次迭代。这只是笨拙,可能会搞砸你的预期结果。所以只是这样做:
browser = Watir::Browser.new :ff
5.times do
... loop code ...
end
browser.close
至少会让发动机罩下的任何事情更清楚。