我编写了一个简单的类,它从字典IMAGES
加载图像网址并将其下载并存储在文件存储中。
下面给出了一个代码:
class ImageLoader:
def __init__(self):
for article, image in IMAGES.items():
try:
LOADED_IMAGES[article] = self.loadImage(image, '/home/')
except BaseException as e:
ERRORS.append(str(e))
print("Error load image...." + str(e))
def nameNameGenerate(self):
return int(round(time.time() * 1000))
def extention(self, path):
ext = path.split(".")[-1]
return '.' + ext if ext else 'jpg'
def loadImage(self, path, path_folder):
filename = str(self.nameNameGenerate()) + str(self.extention(path))
wget.download(url=path, out=path_folder + filename)
return '/catalog/s/' + filename
def save(self):
for key, value in LOADED_IMAGES.items():
item = session.query(ProductTable).filter_by(sku=key).one()
item.image = value
session.commit()
使用此课程:
images = ImageLoader()
images.save()
我遇到的问题是启动后IMAGES
中的大数据脚本不稳定。让我解释一下。
当我运行它时,它开始通过URL捕获文件,迭代循环。首次获取文件后终端通过启动脚本需要按下按钮继续。 (我按下Ctrl + C开始下载下一个文件)。
我不明白这种行为的原因,我也注意到脚本保存了临时文件而不是真实。
我认为这是由操作系统引起的。
答案 0 :(得分:0)
我认为CTRL + C是必要的,因为行
ERRORS.append(str(e))
究竟是什么变量' ERRORS' ?我认为这是造成冻结行为问题的原因。尝试没有错误的代码,并告诉我它是否更好。
另一件事,我认为最好使用self.LOADED_IMAGES而不是LOADED_IMAGES。