J'ai un petit script de balayage/balayage d'écran qui fonctionnait il y a un demi-an, mais maintenant, ça ne marche plus. J'ai vérifié les valeurs html et css pour l'expression reg dans la source de la page, mais ils sont toujours les mêmes, donc de ce point de vue, cela devrait fonctionner. Des suppositions?Problèmes dans un script de grattage à l'écran de ruby
require "open-uri"
# output file
f = open 'results.csv', 'w+'
# output string
results = ""
begin
# crawl first 20 pages
for i in (1..20)
open("http://www.example-#{i}.com") {|url|
# check each line using regular expression
url.each_line { |line|
if line =~ /class=\"L1g\" onclick=\"s_objectID=\'foobar\'\">([^<]+)<\/a><\/h3><\/li>/
# if regular expression matches then add to results
results += $1 + "\n"
end
}
}
end
ensure
# write to and close file
f.print results
f.close
end
Où dites-vous que cela ne fonctionne pas, que se passe-t-il? – mikej
+1 pour rompre la syntaxe de Stack Overflow. Quel message d'exception produit-il? Aussi, avez-vous essayé les approches de débogage mentionnées dans [Comment déboguer les scripts ruby?] (Http://stackoverflow.com/questions/3955688/how-do-i-debug-ruby-scripts) –
Donc la page est la comme toujours, et cela a fonctionné dans le passé. Avez-vous actualisé Ruby? – Sirupsen