You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何批量下载CSV中URL图片并按VendorID_Invoice#规则重命名

批量下载CSV中URL图片并按规则命名的解决方案

嘿,作为编程新手碰到这种批量处理的需求确实有点挠头,不过用Python就能轻松搞定!下面是一套完整的实操方案,跟着一步步来就行:

准备工作

首先得装两个Python工具库,用来处理CSV和下载图片:

  • pandas:负责读取和解析CSV文件里的内容
  • requests:负责从URL下载图片

打开命令提示符(Windows)或终端(Mac/Linux),输入下面的命令安装:

pip install pandas requests

完整代码示例

把下面的代码存成download_images.py,再把你的CSV文件(比如叫invoices.csv)和这个脚本放在同一个文件夹里:

import pandas as pd
import requests
import os

# 先建个存放图片的文件夹,没有的话自动创建
save_folder = "downloaded_images"
if not os.path.exists(save_folder):
    os.makedirs(save_folder)

# 读取CSV文件,注意这里的列名要和你的CSV完全对应(包括大小写、特殊符号)
df = pd.read_csv("invoices.csv")

# 逐行处理每一条数据
for index, row in df.iterrows():
    vendor_id = str(row["VendorID"])
    invoice_num = str(row["Invoice#"])
    image_url = row["URL"]
    
    # 生成目标文件名,同时处理文件名里不能有的特殊字符(比如/:*?"<>|)
    filename = f"{vendor_id}_{invoice_num}"
    filename = filename.replace('/', '_').replace(':', '_').replace('*', '_').replace('?', '_').replace('"', '_').replace('<', '_').replace('>', '_').replace('|', '_')
    # 给文件名加后缀,这里默认用jpg,要是有多种格式可以从URL提取
    filename += ".jpg"
    save_path = os.path.join(save_folder, filename)
    
    try:
        # 发送请求下载图片,设置10秒超时防止卡住
        response = requests.get(image_url, timeout=10)
        response.raise_for_status()  # 如果URL打不开(比如404、500)就抛出错误
        
        # 把图片内容写入本地文件
        with open(save_path, "wb") as f:
            f.write(response.content)
        
        print(f"搞定:{filename}")
    except Exception as e:
        print(f"{vendor_id}_{invoice_num} 下载失败 - 原因:{str(e)}")

print("所有任务都完成啦!")

小提示

  • 列名要对应:代码里的"VendorID"、"Invoice#"必须和你CSV里的列名完全一致,大小写、特殊符号都不能错
  • 适配多种图片格式:如果你的图片有png、gif等格式,可以替换代码里的后缀部分,改成从URL自动提取:
    import os.path
    # 从URL里截取出文件后缀
    file_ext = os.path.splitext(image_url)[1]
    filename += file_ext
    
  • 网络慢的调整:要是你的网络不太稳定,可以把代码里的timeout=10改成更大的数字,比如20

内容的提问来源于stack exchange,提问作者M.Romero

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:34:34