我有一个代码,试图访问几个网页,并将它们添加到收藏夹。我想,一旦你使用访问,水豚不能继续其余的命令,检查下面的代码;水豚使用访问循环
sub_menus = all('li a')
for i in 0..(sub_menus.length-1)
if (sub_menus[i]['href'] == "http://intranet/Intranet/#") || (sub_menus[i]['href'] !~ /http:\/\/intranet(.*)/)
next
else
visit sub_menus[i]['href']
$links.push(sub_menus[i]['href'])
find(:xpath , '//*[@id="AddFavorites_UC1_AddFavoriteButton"]').click
end
puts "hgfhf"
end
p $links
p $links.length
当我执行该代码,请访问并单击工作只有一次,但for循环不运行第二次。
有什么建议吗?
是。在0 ..(sub_menus.length-1)'中使用'sub_menus.each'来代替'。 – harm 2013-02-26 15:50:28
你使用这个进行测试还是抓取?对于抓取,我发现[机械化](http://mechanize.rubyforge.org/)的数量级更好。 – harm 2013-02-26 15:52:22
感谢您的建议:)虽然没有帮助。我试图自动化一些网页测试。 – 2013-02-27 07:07:18