Bonsoir à tous.

L'envie d'écrire un script qui pourrait récupérer de manière automatisé les images d'un blog internet m'a donné l'occasion de pratiquer un peu le module urllib2 que je ne connaissais pas du tout.

Le script fut vite fait, or sur certaines URL web, celui ci m'enregistre des fichiers vides alors qu'à peine deux minutes avant les images s'enregistraient correctement. Je ne comprends pas si il s'agit d'une erreur de ma part ou d'une banalité. Je n'ai pas trouvé de sujets qui faisaient état de ce type de problème.

Une fois sur deux, les objets récupérés sont illisibles ou corrompues (dixit la visionneuse photo de windows). Or les URLS sont correctes et le pire c'est qu'une fois sur deux ca fonctionne !

merci pour toute l'aide que vous pourrez apporter !

voici le script :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
from urllib2 import urlopen
from shutil import copyfileobj
from re import findall
import os
 
 
 
def extIMG(url, output):
    data = urlopen(url)
    sourc = data.read()
    data.close()
    rawData = findall('href="(.*?)"', sourc)
 
    urls = []
 
    for each in rawData :
        if 'jpg' in each :
            urls.append(each)
 
    for each in urls :
        try :
            src = urlopen(each)
        except :
            print 'Error'
            pass
        else :
            filename = output + '//' + each.split('/')[-1]
            dst = open(filename, 'w')
            copyfileobj(src, dst)
            dst.close()
 
 
if __name__ == '__main__':
    url = str(raw_input('url : '))
    output = 'C://Users//Jo//Desktop//' + str(raw_input('output : ')).capitalize()
    os.mkdir(output)
    extIMG(url, output)