Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

Stop Double-Posting: A Python Ledger And CSV Builder For Adobe, Vecteezy And Dreamstime Uploads

说明与用途

基于 Python 的管道通过使用 CSV 元数据和扁平文件账本,防止了对 Adobe Stock、Vecteezy 和 Dreamstime 的重复上传,能够在单核机器上处理 39 个产品而不出现内存错误。

问题

Duplicate uploads to stock platforms were causing rejections and account flags because the author had no memory between runs.

结果

The pipeline processed 39 products, producing 856 MB of output on a single‑core, 2 GB RAM machine without any out‑of‑memory errors.

工作流

  • Generate a CSV with correct headers using make_metadata.py for the target platform.
  • Create a list of assets to upload (items.txt).
  • Run python upload_tracker.py pending items.txt to see which files are not yet uploaded.
  • Upload assets one by one, marking each as done with python upload_tracker.py done "asset-001.jpg".
  • If the session stops, rerun pending to resume exactly where left off.
  • Keep the ledger in the output/ folder next to the CSV for that batch.
  • Use md2pdf.py to convert research notes to PDF and pack_product.py to zip the product with cover and thumbnail.

证据

I ran the same batch twice on a Tuesday night in March. Forty-one JPGs, already uploaded to Adobe Stock the night before, uploaded again because my terminal history was right there and I was tired.

来源

The tracker is a flat text ledger, one asset per line. Three commands: python upload_tracker.py pending items.txt ... python upload_tracker.py done "asset-001.jpg" ...

来源

The whole thing runs on 1 vCPU, 2 GB RAM, no GPU. That's not a limitation, it's a design constraint, and it forced habits worth keeping even on bigger machines... The result: the pipeline packaged 39 products, 856 MB of output, on that box without a single out-of-memory kill.

来源

  • 记录日期: 2026-10-21T14:56:18.920Z