How A 15-Column Dreamstime CSV And A Upload Tracker Fixed My Rejection And Double-Post Problems
Описание и применение
Автоматизированные скрипты make_metadata.py и upload_tracker.py устраняют ошибки заголовков CSV и двойные загрузки, позволяя загружать контент на Dreamstime, Adobe Stock и Vecteezy без отказов и потери аккаунта.
Задача
Hand‑edited CSVs with incorrect column order caused Dreamstime to reject uploads and led to double‑posting when re‑running pipelines.
Результат
The two scripts eliminated CSV header rejections and prevented duplicate uploads, enabling the author to ship 39 products (856 MB) from a single 1 vCPU, 2 GB RAM server.
Рабочий процесс
- 1. Run
make_metadata.py ./my-assets --platform dreamstime --out dreamstime.csv --ext .jpgto generate a 15‑column CSV matching Dreamstime’s exact header order. - 2. Use
upload_tracker.py pending items.txtto list assets not yet uploaded. - 3. Upload each asset, then immediately run
upload_tracker.py done "asset-001.jpg"to mark it as posted. - 4. Run
upload_tracker.py statusto verify all items are completed. - 5. Repeat for other platforms with appropriate
--platformflag.
Доказательства
Dreamstime's importer doesn't guess. It reads the header row, checks it against its expected 15-column layout, and fails the whole file if one column is missing or renamed.
The script knows the exact header each platform demands and writes that header and nothing else.
The key habit is marking done immediately after each successful upload, before the next one starts, not at the end of the batch.
Both scripts run on nothing but Python.
- Дата записи: 2026-10-15T20:40:59.203Z