我有一個代碼,試圖訪問幾個網頁,並將它們添加到收藏夾。我想,一旦你使用訪問,水豚不能繼續其餘的命令,檢查下面的代碼;水豚使用訪問循環
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