【问题标题】:download an image with python用python下载图像
【发布时间】:2021-10-23 07:59:25
【问题描述】:

你好我想下载这个link的图片, 但我无法打开创建的图像。这是输出文件 我该如何解决这个问题? 这是代码:

from requests.models import Response
import requests

url = 'https://beta.mangaeden.com/it/it-manga/jojo-no-kimyou-na-bouken---jojorion/1/1'
r = requests.get(url)
soup = BeautifulSoup(r.content, 'html.parser')
immagine = soup.find(id='mainImg')
src = str(immagine.get('src'))
link_immagine = "https:"+src
print(link_immagine)
'''download imagege'''
response = requests.get(link_immagine)
f = open("C:\\Users\\chris\\Desktop\\image.jpg", "wb")
f.write(response.content)
f.close()
print('download successfull')

【问题讨论】:

标签: python html web


【解决方案1】:

根据您的用户代理,该网站似乎返回 403 Forbidden 错误。如果您使用浏览器的用户代理请求图像,它应该可以工作,例如:

response = requests.get(link_immagine, headers={
        'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0 Safari/537.36'
})

【讨论】:

    【解决方案2】:

    下载此图像时的问题实际上是获取请求,因为响应返回图像链接是403,但如果您在标题中设置User-Agent,它会解决问题,然后您会得到200你可以保存图像。

    from requests.models import Response
    import requests
    from bs4 import BeautifulSoup
    
    url = 'https://beta.mangaeden.com/it/it-manga/jojo-no-kimyou-na-bouken---jojorion/1/1'
    r = requests.get(url)
    soup = BeautifulSoup(r.content, 'html.parser')
    immagine = soup.find(id='mainImg')
    src = str(immagine.get('src'))
    link_image = "https:"+src
    print(link_image)
    '''download link_image'''
    headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.2 Safari/605.1.15'}
    response = requests.get(link_image,headers=headers)
    
    if response.status_code == 200:
        with open("download.jpg", 'wb') as f:
            f.write(response.content)
    else:
      print("NOT FOUND")
    
    

    您之前保存的图像只是 403 Forbidden 的响应,并不是实际的图像数据。

    【讨论】:

      猜你喜欢
      • 2013-06-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-12
      • 2021-10-22
      • 2021-03-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多