重命名和下载链接 - CSV 文件
Rename and download links - CSV file
我有一个包含 6 列和许多行的 CSV 文件。我想从 'link' 列下载所有 png 或 jpg 到与我的 CSV file.Then 同名的文件夹中我想用每个 'title' 内容重命名这些图像。
url1.png 每个文件 name1.png 直到最后一行..
我以此为起点 -
import csv
with open('name.csv') as csvfile:
reader = csv.reader(csvfile, delimiter=',', quotechar='|')
for row in reader:
fileurl = row[0]
filename = row[1]
urllib.request.urlretrieve(fileurl, "name" + filename)
行示例 -
仍在学习中.. 对此有何帮助或建议?
非常感谢。
如果我没理解错的话,您希望下载 link
列中的文件,使用 title
列来构成文件名。
这可以按如下方式完成:
import urllib.request
import csv
import os
with open('name.csv') as csvfile:
reader = csv.DictReader(csvfile)
for row in reader:
name, ext = os.path.splitext(row['link'])
title_filename = f"{row['title']}{ext}".replace('/', '-')
urllib.request.urlretrieve(row['link'], title_filename)
您可以使用.os.path.splitext()
拆分文件名的扩展名。然后可以使用它与 title
中的条目组合以形成新文件名。
例如:
https://url.com/folder/url1.png
将保存为 name1.png
要处理多个相同的 title
条目,您可以调查 Python 的 Counter()
以跟踪您拥有的每个标题的数量。例如:
from collections import Counter
import urllib.request
import csv
import os
with open('name.csv') as csvfile:
reader = csv.DictReader(csvfile)
title_counts = Counter()
for row in reader:
name, ext = os.path.splitext(row['link'])
title = row['title']
title_counts[title] += 1
title_filename = f"{title}_{title_counts[title]}{ext}"
urllib.request.urlretrieve(row['link'], title_filename)
我有一个包含 6 列和许多行的 CSV 文件。我想从 'link' 列下载所有 png 或 jpg 到与我的 CSV file.Then 同名的文件夹中我想用每个 'title' 内容重命名这些图像。
url1.png 每个文件 name1.png 直到最后一行..
我以此为起点 -
import csv
with open('name.csv') as csvfile:
reader = csv.reader(csvfile, delimiter=',', quotechar='|')
for row in reader:
fileurl = row[0]
filename = row[1]
urllib.request.urlretrieve(fileurl, "name" + filename)
行示例 -
仍在学习中.. 对此有何帮助或建议?
非常感谢。
如果我没理解错的话,您希望下载 link
列中的文件,使用 title
列来构成文件名。
这可以按如下方式完成:
import urllib.request
import csv
import os
with open('name.csv') as csvfile:
reader = csv.DictReader(csvfile)
for row in reader:
name, ext = os.path.splitext(row['link'])
title_filename = f"{row['title']}{ext}".replace('/', '-')
urllib.request.urlretrieve(row['link'], title_filename)
您可以使用.os.path.splitext()
拆分文件名的扩展名。然后可以使用它与 title
中的条目组合以形成新文件名。
例如:
https://url.com/folder/url1.png
将保存为 name1.png
要处理多个相同的 title
条目,您可以调查 Python 的 Counter()
以跟踪您拥有的每个标题的数量。例如:
from collections import Counter
import urllib.request
import csv
import os
with open('name.csv') as csvfile:
reader = csv.DictReader(csvfile)
title_counts = Counter()
for row in reader:
name, ext = os.path.splitext(row['link'])
title = row['title']
title_counts[title] += 1
title_filename = f"{title}_{title_counts[title]}{ext}"
urllib.request.urlretrieve(row['link'], title_filename)