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

使用Python3下载图片时如何自动化生成文件名避免文件覆盖

解决方法

方案1:按序号命名(适配你批量下载100张的需求)

不需要额外安装任何库,直接运行以下代码即可一次性下载100张不重名的人脸图片:

import urllib.request
import time

# 你需要下载的总数量,这里填100
download_count = 100
for index in range(download_count):
    # 用序号拼接文件名,天然不会重复,方便后续整理素材
    save_name = f"face_{index}.jpg"
    urllib.request.urlretrieve("https://www.thispersondoesnotexist.com", save_name)
    print(f"已完成第{index+1}张下载,文件名为{save_name}")
    # 加1秒间隔,避免请求太频繁被网站拦截
    time.sleep(1)

运行后会在你的PyCharm项目根目录下生成face_0.jpg到face_99.jpg共100个文件,不会互相覆盖。

方案2:随机文件名(适合单次运行只下载1张的场景)

如果你不需要批量下载,只是每次运行存1张,用以下代码生成完全不重复的随机文件名即可:

import urllib.request
import uuid

# 生成32位长度的唯一随机字符串作为文件名,不存在重复概率
random_name = f"{uuid.uuid4().hex}.jpg"
urllib.request.urlretrieve("https://www.thispersondoesnotexist.com", random_name)
print(f"图片已保存为{random_name}")

小提示:将原代码中的http链接替换为https可以降低请求失败的概率。

内容的提问来源于stack exchange,提问作者koool

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 11:06:04