我知道有些python脚本可以更改文件名但是我有一点问题 我正在尝试将一些图像批量上传到yahoo商店,图像的名称必须与服务器的产品ID相同,以将图像链接到正确的产品。 (我仍然无法理解为什么他们不在数据库中只有一个字段,你可以列出你设置的名称,但无论如何) 我将所有图像放在一个文件中,用于我的所有产品(由我的供应商提供),但名称类似于benj7007.jpg 我还有一个csv产品文件,列出了sku编号和图像名称。 当我将产品上传到雅虎商店时,我使用产品ID的SKU编号。 我可以轻松地创建一个文本文件,列出我上传的产品组的SKU和图像名称,并将其用于python从中读取 SKU编号700756图片benj7007.jpg
我需要更改所有图像的图像名称以匹配SKU,但我不知道如何执行此操作。 有人能指出我正确的方向。 再次感谢, 我做了搜索,但我找不到解决这类问题的方法
答案 0 :(得分:0)
重命名文件:
import os
os.rename("filename.jpg","newname.jpg")
如果您想从列表中读取并重命名
with open("listname") as f:
for line in f:
os.rename(line,"newname.jpg")
答案 1 :(得分:0)
import os
import csv
keys{}
with open('product_image.csv',rU) as csvfile:
reader = csv.reader(csvfile, delimiter = ',')
for rowDict in reader:
keys[ rowDict[0] ] = rowDict[1]
print (rowDict)
for fileName in (os.listdir('.') & keys.keys() ):
try:
os.rename(fileName, keys[fileName])
except:
print('image was not renamed')
对于那些像我一样并仍在努力学习所有事情的人, 在电子表格中,第一列是图像的当前名称,第二列是您要更改的名称。保存为名为product_image.csv的csv。 该脚本将使用csv列表更改文件中的名称。 我发现的一个错误提示是,由于某种原因,列表中的第一个文件不会重命名并将被删除。我不会因为我清理它并更新它以使用3.4
的脚本而受到赞扬