Skip to main content
 首页 » 编程设计

Python 网页抓取 : Image incomplete when using urllib

2024年10月01日2lidabo

我正在尝试使用 Python 和 BeautifulSoup 检索图像。我设法获得了图像的完整 url,但是当我使用 urllib.urlretrieve(imagelink, filename) 时,它检索了图像,但图像不完整,只有 3.2kb。

真实图像(我得到了很多图像)平均约为 800kb。它遍历并下载所有图像,但没有一个是可见的,而且文件大小都相同。不过,在浏览器中打开时,完整的图像 url 可以正常工作。

知道什么会导致这样的问题吗?我不认为显示我的代码会有帮助,但这是我获取 url 的部分:

print imagelink 
filename = imagelink.split('/')[-1] 
time.sleep(5) 
urllib.urlretrieve(imagelink, filename) 
time.sleep(5) 

请您参考如下方法:

宏杰李,requests 是 urllib 的包装器。因为它也是套接字的包装器 -))

使用 urllib2 可以像这样实现相同的结果。

>>> import urllib2 
>>> r = urllib2.urlopen('/image/tkGEv.jpg?s=328&g=1') 
>>> with open("/home/ziya/Pictures/so_image.jpg", "wb") as img: 
...     img.write(r.read())