网易首页 > 网易号 > 正文 申请入驻

40个文件重复提交,我用一个Python脚本堵住了这个坑

0
分享至

周二晚上11点,我打开Adobe Stock的贡献者后台,发现同一批矢量素材在审核队列里躺了两遍。四十个文件,一周之内提交了两次。

原因不复杂:上传脚本跑到一半失败,我修好之后直接重跑,而脚本没有记录哪些文件已经发出去过。账号没出事,纯属运气。批量重复提交是贡献者账号被标记的最快路径,而我恰好在最大的销售平台上干了一次。

修复花了一个下午。这个文件现在是我整条流水线里最不起眼、也最值钱的一个。

重复提交为什么这么容易发生

批量上传的流程通常是三步:生成素材文件夹、构建元数据CSV、通过贡献者门户提交。问题出在第二步和第三步不是原子操作。

Adobe Stock的CSV模板是严格的五列表头,Vecteezy要四列,Dreamstime要十五列。任何一个表头写错,渠道会立刻拒收文件。我最初几次的本能反应是改完CSV,把整批重跑一遍。重复文件就是这么来的。

脚本没有记忆。它会老老实实为已经提交过的文件重新生成条目,因为“已提交”这个事实只存在于贡献者后台,不在我的硬盘上。

部分失败会让情况更糟。如果跑到四十个文件中的第三十个挂掉,你不想重发前三十个。但没有台账,你根本不知道它停在哪,于是要么全部重发,要么手动去后台一个个核对——而这正是流水线本该替你消灭的枯燥活。

追踪器只有一个文件,零依赖

解决方案小得有点不好意思。upload_tracker.py是一个单文件Python脚本,只用标准库,不需要pip install。它维护一份纯文本台账,回答三个问题:

  • python upload_tracker.py pending items.txt —— 哪些还没做
  • python upload_tracker.py done "asset-001.jpg" —— 标记某个文件已完成
  • python upload_tracker.py status —— 查看当前状态

替代那个周二夜晚灾难的工作流是这样的:任何提交动作之前,先从文件夹生成items.txt,先跑pending,只提交pending显示出来的文件,每发一个就标记done。如果跑到第三十个挂了,重跑pending,它只显示最后十个,也只提交这十个。重跑不可能再重复提交,因为决定发什么的是台账,不是我的记忆。

零依赖这一点值得多说一句。我整条流水线跑在一台1 vCPU、2 GB内存、没有GPU的服务器上。工具箱里只有两个脚本需要第三方包(Pillow做封面,reportlab做PDF)。元数据构建器和追踪器只需要Python 3.9以上,意味着它们在哪都能跑,包括这么小的机器,不用为虚拟环境争论。

元数据是同一个问题的另一半

追踪器只有在CSV一次写对的前提下才有用。make_metadata.py按每个渠道要求的精确表头输出,不多写一列:

  • python make_metadata.py ./my-assets --platform adobe --out metadata.csv --ext .jpg
  • python make_metadata.py ./my-assets --platform vecteezy --out vecteezy.csv --ext .jpg
  • python make_metadata.py ./my-assets --platform dreamstime --out dreamstime.csv --ext .jpg

如果你提供titles.json,它能从中读取真实的标题和关键词。没有的话,文件名会被转成标题格式当作标题用,第一遍凑合可以,提交前应该替换掉。

CSV阶段被拒,正是触发重跑冲动的源头。所以修表头问题和修重复问题本质上是同一个修复:让流水线变得确定,你就不会再有“再跑一遍试试”的念头。

让这套东西安全的三个习惯

现在每批我都会做三件事:

  1. 一次只跑一个进程。在单核机器上绝不要并行分发图片任务。串行单件更慢,但整体更快,因为不会有东西挂掉。
  2. 用gc.collect()在条目之间释放内存,并且用resource.getrusage(RUSAGE_SELF).ru_maxrss测峰值内存,不是平均值。平均内存对上限一无所知。
  3. 重渲染步骤一个子进程只处理一个文件,这样内存才能真正还给操作系统。

这些习惯来自跑完整条流水线的经验:大约19000行代码,打包39个产品,产出约856 MB成品。如果其他东西全丢了,追踪器是我第一个要重建的部件。

我把追踪器、元数据构建器和另外两个脚本(一个Markdown转PDF工具,一个负责压缩文件并渲染1280x720封面加600x600缩略图的产品打包器)打进了Pipeline Starter Kit。就是这套工具产出了我的矢量提示词包和其余目录,跑在每月几美元成本的硬件上。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
炸裂!章子怡套现巨款走人

炸裂!章子怡套现巨款走人

新浪财经
2026-10-18 21:45:22
5万公里高铁背后,大量女乘务员纷纷离职,藏着多少现实困境?

5万公里高铁背后,大量女乘务员纷纷离职,藏着多少现实困境?

猫叔东山再起
2026-10-05 18:35:13
汉庭快捷有门店推出“欢聚六人房”,顾客称像是“美丽豪华大宿舍”,有网友建议全国推广,华住会官方客服回应

汉庭快捷有门店推出“欢聚六人房”,顾客称像是“美丽豪华大宿舍”,有网友建议全国推广,华住会官方客服回应

极目新闻
2026-10-18 17:12:20
演员童瑶发文告别

演员童瑶发文告别

背包旅行
2026-10-16 11:55:16
杜锋一句“随时回归”炸锅!广东三连败暗藏换帅倒计时?

杜锋一句“随时回归”炸锅!广东三连败暗藏换帅倒计时?

宝哥精彩赛事
2026-10-20 18:03:34
一妈妈穿太辣和青春期儿子合影遭网友怒批:儿大避母都不懂吗?

一妈妈穿太辣和青春期儿子合影遭网友怒批:儿大避母都不懂吗?

观世记
2026-10-16 16:45:45
52岁刘恺威新恋情曝光,与小20岁黎纪君十指紧扣逛街甜似初恋

52岁刘恺威新恋情曝光,与小20岁黎纪君十指紧扣逛街甜似初恋

开开森森
2026-10-20 09:26:14
不能再拖了!再不着手解决台海问题,全世界真的会看我们的笑话了

不能再拖了!再不着手解决台海问题,全世界真的会看我们的笑话了

瓦伦西亚月亮
2026-10-17 19:44:57
皇冠新材中签号出炉 共约6.34万个

皇冠新材中签号出炉 共约6.34万个

证券时报
2026-10-20 21:06:05
孩子不会记住你带他去过多少地方玩,给他买了多少玩具,但是永远会记得…

孩子不会记住你带他去过多少地方玩,给他买了多少玩具,但是永远会记得…

上海女性
2026-10-13 13:09:33
欧盟:如果勒庞在2027年当选,将“迅速准备对俄罗斯实施制裁”

欧盟:如果勒庞在2027年当选,将“迅速准备对俄罗斯实施制裁”

启迪你思维
2026-10-19 19:55:14
C罗回归继续替补?曝葡萄牙主帅坚持原则+拒绝道歉,拉莫斯6场5球

C罗回归继续替补?曝葡萄牙主帅坚持原则+拒绝道歉,拉莫斯6场5球

球场没跑道
2026-10-20 12:19:06
普京动真格了!俄外长亲自访华送上关键证据,请中国出面给俄做主

普京动真格了!俄外长亲自访华送上关键证据,请中国出面给俄做主

霁寒飘雪
2026-10-19 17:10:45
铁了心对付中国?暴跌58%,俄罗斯大幅加税,中国汽车出口骤降

铁了心对付中国?暴跌58%,俄罗斯大幅加税,中国汽车出口骤降

听风喃
2026-10-17 08:00:36
中国面临两大战略缺口:一个是“台湾”问题,另一个曾动用300万大军才勉强堵住的致命防线

中国面临两大战略缺口:一个是“台湾”问题,另一个曾动用300万大军才勉强堵住的致命防线

林杰论事
2026-10-18 15:37:07
特朗普施压乌克兰为何反遭“打脸”?

特朗普施压乌克兰为何反遭“打脸”?

风铃草语
2026-10-20 08:03:36
小天才手表封闭社交引争议:不足三成销量贡献超半数销售额,销售额份额排名第一;华为加速追赶

小天才手表封闭社交引争议:不足三成销量贡献超半数销售额,销售额份额排名第一;华为加速追赶

极目新闻
2026-10-20 21:24:39
妈呀!太疯狂了,没钱交社保竟然可以贷款,美曰“续保贷”…

妈呀!太疯狂了,没钱交社保竟然可以贷款,美曰“续保贷”…

慧翔百科
2026-10-14 08:24:59
战争爆发前的预兆出现!美国已经有4个征兆,张召忠预言要成真?

战争爆发前的预兆出现!美国已经有4个征兆,张召忠预言要成真?

画卷
2026-10-08 19:17:31
中国将迎来前所未有的死亡高峰,专家得出答案:是这些因素导致的

中国将迎来前所未有的死亡高峰,专家得出答案:是这些因素导致的

混沌录
2026-05-28 22:53:01
2026-10-21 04:12:49
野生运营
野生运营
懂点产品,懂点AI,正在努力给平淡日子搞点新花样。
212文章数 98关注度
往期回顾 全部

科技要闻

新版MiniMax,能和DeepSeek掰手腕吗?

头条要闻

距中国台湾110公里 日美出动6万人大举军演为历史之最

头条要闻

距中国台湾110公里 日美出动6万人大举军演为历史之最

体育要闻

巴拉克:天生亚军与漫长极夜

娱乐要闻

刘恺威承认新恋情,打球认识

财经要闻

抄底万达之后 私募大佬又对恒大下手了

汽车要闻

黑科技一次看全 2026奇瑞全球创新大会干货汇总

态度原创

艺术
本地
游戏
手机
军事航空

艺术要闻

谁敢信?63岁大爷的油画竟被选进美院教材,质感强到像要溢出屏幕!

本地新闻

一场垂直登高赛跑出了"山城"的真正内核

《最终幻想:共鸣》评分出炉:IGN 8分 GameSpot 7分

手机要闻

iPhone Duo铰链上方屏幕按压会下陷起皱 苹果尚未说明是否影响耐用性

军事要闻

特朗普狠批泽连斯基"不想结束战争" 泽连斯基强硬回怼

无障碍浏览 进入关怀版