2017-05-26 99 views
-1

我有如下数据CSV数据(2列)图片下载+重命名基于CSV

  • ImageURL1,命名甲
  • ImageURL1,名称乙
  • ImageURL2,名称C语言

我想下载的ImageURL1找到该图片,并有两个图像文件的名称A和名称乙

是否有办法去做这个?

理想情况下,我想下载每个图像+重命名该文件,然后重复该序列。

或持有所有独特的图像资产和后来复制这些文件到新的图像名称

也许与Python /汤/散装图片下载等

回答

2

可以导入urllib3模块,并使用以下

urllib.urlretrieve(img_url, "path/name_of_img.jpg") 

的第一个参数是马上要下载图像和第二的URL路径,你希望它被保存在文件夹/目录下,加图像文件的名称和扩展名。

我希望这对你有用。

1

你有没有试过任何代码?请分享,如果你有。从你所描述的,有三个主要目标:1)打开并读取CSV文件,2)下载图像3)重命名文件。我给你大方向的每个部分,但它是由你来完成全码:

1)打开CSV和读取数据:Python有CSV特定库:CSV File Read and Write

这里是一个例如使用csv.DictReader。你将不得不修改您的特定CSV文件格式:

import csv 
with open('filename.csv', 'rb') as csvfile: 
    reader = csv.DictReader(csvfile) 
    for row in reader: 
     image_url = row['ImageURL'] # replace with your column heading 
     filename = row['Name'] # replace with your column heading 

2)从网络下载的图像:您可以使用urllib.urlretrieve下载图像。例如:

import urllib 
urllib.urlretrieve(image_url, filename) 

3)重命名文件。上面的代码将检索URL并保存为filename,所以也许你不需要做这一步。如果你仍然这样做,那么os.rename(src, dst)将做到这一点。

希望这会有所帮助。祝你好运。使用大量的print语句来调试您的代码。 Python文档是你的朋友。