【发布时间】:2021-05-23 06:48:18
【问题描述】:
我在学校有一个电子商务网站项目,我需要大量图片才能完成。所以我查阅了从 Youtube 下载图片的代码:John Watson Rooney 但是我在下载图像的一半时遇到问题 Url 更改为 'data:image/gif;base64,R0lGODdhFQAXAPAAANba3wAAACwAAAAAFQAXAAACFISPqcvtD6OctNqLs968+w+GolUAADs=' 所以我无法继续下载。
import requests
from bs4 import BeautifulSoup
import os
import base64
def imagedown(url, folder):
try:
os.mkdir(os.path.join(os.getcwd(), folder))
except:
pass
os.chdir(os.path.join(os.getcwd(), folder))
r = requests.get(url)
soup = BeautifulSoup(r.text, 'html.parser')
images = soup.find_all('img', class_='styles__productImage--3ZNPD')
for image in images:
name = image['alt']
link = image['src']
with open(name.replace('/', '').replace('?', '').replace('=', '').replace('|', '') + '.jpg', 'wb') as f:
im = requests.get(link)
f.write(im.content)
print('Writing: ', name)
imagedown('https://www.redbubble.com/shop/?gender=gender-men&iaCode=u-tees&page=2&query=dog&sortOrder=relevant&style=u-tee-regular-crew', 'Images')
不知道哪里出错了,请帮帮我,谢谢
【问题讨论】:
-
您不必下载此图像。你已经有了它,它只是
base64编码的。查看this thread 了解如何解码的解决方案。
标签: python web-crawler