Writing Stock Metadata CSVs That Pass Adobe's Five-Column Header Check First Time
说明与用途
自动化工作流生成符合Adobe Stock、Vecteezy和Dreamstime要求的CSV元数据,强制执行标题规则、关键词限制并跟踪上传,避免重复发布,确保首次通过审核。
问题
A single incorrect CSV header caused a batch of 40 JPEGs to be rejected by Adobe Stock before review, wasting an entire afternoon.
结果
The pipeline runs on a minimal 1 vCPU, 2 GB RAM server, processes metadata with pure Python, and achieves first‑try acceptance on Adobe, Vecteezy, and Dreamstime.
工作流
- 1. Store raw images in assets/ folder.
- 2. Run make_metadata.py with platform flag to generate CSV with exact header and required columns.
- 3. Supply titles.json for human‑written titles and keywords per asset.
- 4. Use upload_tracker.py to check pending uploads, run upload, and mark done to avoid double‑posting.
- 5. Optionally run md2pdf.py and pack_product.py for packaging.
- 6. Verify CSV passes platform parser before upload.
证据
I had written <code>Keywords</code> where Adobe wanted <code>keywords</code>, lowercase, and I had eight columns where Adobe's ingest expects exactly five.
Adobe Stock's CSV ingest is strict. The header row must be five columns: <code>Filename</code>, <code>Title</code>, <code>Keywords</code>, <code>Category</code>, <code>Releases</code>.
I built <code>upload_tracker.py</code> after doing exactly this once: a ledger that records what is done, so <code>pending</code> shows only what has not been posted, and a re‑run cannot double‑post.
- 记录日期: 2026-10-17T03:41:30.305Z