class Allocine < Basemodule\r
\r
def createConnexion\r
- @connexion = Net::HTTP::new('www.allocine.fr').start if @connexion == nil || !@connexion.started?\r
+ begin\r
+ @connexion = Net::HTTP::new('www.allocine.fr').start if @connexion == nil || !@connexion.started?\r
+ rescue \r
+ Puts "Impossible de se connecter à Allocine. Retry.."\r
+ retry\r
+ end\r
end\r
\r
def fermerConnexion \r
# voir le parent.\r
def rechercherFilm(titre)\r
createConnexion\r
-\r
+ \r
begin\r
reponse = nil\r
begin\r
/<img src="(.*?)" border="0" alt="" class="affichette" \/>/ =~ html\r
unless $1.nil?\r
@threadImage = Thread::start($1){|imageUrl|\r
+ nbRetry = 0\r
begin\r
- imageUrl = URI.parse(imageUrl) \r
- connexionImage = Net::HTTP::new(imageUrl.host).start\r
- image = connexionImage.get(imageUrl.path).body\r
+ imageUrlParsed = URI.parse(imageUrl) \r
+ connexionImage = Net::HTTP::new(imageUrlParsed.host).start\r
+ image = connexionImage.get(imageUrlParsed.path).body\r
f = File::new($repBase + "/" + $repAffichette + film.id.to_s + ".jpg", 'w').binmode\r
f.write(image)\r
f.close\r
rescue Exception => e\r
puts e.message\r
puts e.backtrace \r
- puts "[!] Erreur lors du chargement de l'image #{imageUrl}, retry.." \r
- retry\r
+ puts "[!] Erreur lors du chargement de l'image '#{imageUrl}', retry.." \r
+ retry if (nbRetry += 1) < 5 \r
end\r
}\r
end\r