【问题标题】:Unable to save image from web using urllib2无法使用 urllib2 从网络保存图像
【发布时间】:2013-01-21 13:32:43
【问题描述】:

我想使用 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()

有什么建议吗?

【问题讨论】:

  • 它保存的“其他东西”是什么?
  • 我无法重现您的问题;我得到了正确的 JPG 图片。

标签: python python-2.7 beautifulsoup urllib2


【解决方案1】:

该网站正在向您返回标准图片,因为您正在抓取该网站。检索图像时使用相同的“技巧”设置标题:

imgRequest = urllib2.Request(imgUrl, headers=headers)
imgData = urllib2.urlopen(imgRequest).read()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-07-18
    • 1970-01-01
    • 2013-03-17
    • 2011-10-10
    • 2011-05-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多