Service 01 · Data and automation
Excel and product data cleanup, automation
I make messy product lists ready to import, extract PDF catalogues into Excel, and hand the file work you do by hand every week over to Python scripts.
What I do
Three kinds of work, each with a clear deliverable.
Product list cleanup
Shopify, WooCommerce, Amazon and Etsy exports. I look at the file first, then tell you what can be done.
- Duplicate products and SKUs removed
- Titles, sizes and units made consistent
- Prices as real numbers, not text
- Excel and CSV, ready to upload
- A short change log with every delivery
PDF catalogues to Excel
Catalogues and price lists; small jobs welcome.
- Every row extracted, not auto-converted
- Only the columns you choose
- Real numbers, no merged cells
- Excel and CSV, both delivered
- Scanned pages checked by hand
Python automation for Excel, CSV and PDF work
Describe the job in plain words; no spec needed.
- Merge, split, match and reformat files
- The script plus a short how-to guide
- Tested on your real data before delivery
- Re-run it any time, at no extra cost
- I say so if doing it by hand is cheaper
Before and after
A messy Shopify product list, before and after cleanup.
The sample file contains the mistakes I see most often in product lists; it does not belong to a real store. The clean table below is the actual output of the cleanup script I deliver, run on this file. Rows and cells marked in red were fixed by the script.
| Title | SKU | Price | Stock | Vendor | Type | Tags |
|---|---|---|---|---|---|---|
| Classic T-Shirt␣␣ | TS-001 | "19,90" | 12 | Northwind␣ | T-Shirt | cotton, summer |
| classic t-shirt | TS-001 | 19.90 | 12 | northwind | tshirt | Cotton,Summer |
| Ceramic Mug - Blue | MG-014 | $8.50 | 0 | Northwind | Mug | kitchen |
| Ceramic Mug␣␣Blue | MG-14 | 8.5 | Northwind | mug | Kitchen | |
| Hoodie Grey XL | HD-220 | "45,00" | 3 | Southbay | Hoodie | winter |
| HOODIE GREY XL | HD-220 | 45 | 3 | SOUTHBAY | hoodie | Winter |
| Water Bottle 500ml | WB-500 | 12.00 | 7 | Eastgate | Bottle | sport, summer |
| Water bottle 500 ml | WB500 | "12,00" | 7 | eastgate | bottle | Sport |
| Baseball Cap Black | CP-030 | 15.75 | 22 | Northwind | Cap | summer |
| Socks 3-Pack | SK-003 | "9,99" | 48 | Southbay | Socks |
| Title | SKU | Price | Stock | Vendor | Type | Tags |
|---|---|---|---|---|---|---|
| Classic T-shirt | TS-001 | 19.90 | 12 | Northwind | T-shirt | cotton, summer |
| Ceramic Mug - Blue | MG-014 | 8.50 | 0 | Northwind | Mug | kitchen |
| Hoodie Grey XL | HD-220 | 45.00 | 3 | Southbay | Hoodie | winter |
| Water Bottle 500ml | WB-500 | 12.00 | 7 | Eastgate | Bottle | sport, summer |
| Baseball Cap Black | CP-030 | 15.75 | 22 | Northwind | Cap | summer |
| Socks 3-pack | SK-003 | 9.99 | 48 | Southbay | Socks |
What the script fixed
The script gives the same result every time it runs on this file, and it writes down every merge it makes.
- Differently spelled copies of the same product merged: 10 rows, 6 products
- SKU variants fixed: MG-14 → MG-014, WB500 → WB-500
- Prices stored as text turned into numbers: "19,90" → 19.90, $8.50 → 8.50
- Letter case and spacing made consistent: SOUTHBAY → Southbay
- Change log: "row 3: duplicate SKU TS-001 merged into row 1" and three more lines
Have a file like this?
Describe it briefly; I will tell you honestly what can be done.