Невозможно сохранить изображение из Интернета с помощью urllib2

Я хочу сохранить некоторые изображения с веб-сайта с помощью python urllib2, но когда я запускаю код, он сохраняет что-то еще.

Это мой код:

user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'
headers = { 'User-Agent' : user_agent }
url = "http://m.jaaar.com/"
r = urllib2.Request(url, headers=headers)
page = urllib2.urlopen(r).read()

soup = BeautifulSoup(page)
imgTags = soup.findAll('img')
imgTags = imgTags[1:]


for imgTag in imgTags:
    imgUrl = "http://www.jaaar.com" + imgTag['src']
    imgUrl = imgUrl[0:-10] + imgUrl[-4:]
    fileName = "khabarnak-" + imgUrl[-12:]
    print fileName

    imgData = urllib2.urlopen(imgUrl).read()
    print imgUrl

    output = open("C:\wamp\www\py\pishkhan\\" + fileName,'wb')
    output.write(imgData)
    output.close()

Какие-либо предложения?


person Nermia    schedule 21.01.2013    source источник
comment
Что это за «что-то еще», что он спасает?   -  person Martijn Pieters    schedule 21.01.2013
comment
Я не могу воспроизвести вашу проблему; Я получаю правильные изображения JPG.   -  person Martijn Pieters    schedule 21.01.2013


Ответы (1)


Сайт возвращает вам стандартное изображение, потому что вы очищаете сайт. Используйте тот же «трюк» установки заголовков при извлечении изображения:

imgRequest = urllib2.Request(imgUrl, headers=headers)
imgData = urllib2.urlopen(imgRequest).read()
person Martijn Pieters    schedule 21.01.2013