If you have ever worked with e-commerce sellers or operations teams, you know the two biggest time sinks:

  1. Resizing thousands of supplier images into exact marketplace specs (1000x1000 square cover, 780px detail width) while stripping duplicate EXIF metadata.
  2. Cleaning 50,000+ rows of messy order spreadsheets (mixed phone formats, bracketed option strings, duplicate order IDs) and injecting live =SUM() formulas into an ERP-ready .xlsx workbook.

Here is the exact minimal Python pipeline using Pillow and openpyxl that turns a 3-day manual job into a 15-second script.

1. High-Speed LANCZOS Image Normalizer + EXIF Scrubber

from PIL import Image, ImageFilter, ImageEnhance import io, hashlib def normalize_product_image(raw_img: Image.Image, index: int) -> bytes: # Resize with LANCZOS and apply subtle sharpening for mobile clarity  out = raw_img.resize((1000, 1000), Image.Resampling.LANCZOS) out = out.filter(ImageFilter.UnsharpMask(radius=1.2, percent=125, threshold=3)) out = ImageEnhance.Contrast(out).enhance(1.03) buf = io.BytesIO() out.save(buf, format='JPEG', quality=95, optimize=True) return buf.getvalue() 

2. Regex Order Cleanser + Live Formula Injector (openpyxl)

Instead of exporting flat CSVs where finance teams have to re-build formulas manually, write the Excel formula string (=I2-J2, =SUM(K2:K500)) directly into the cell value:

import re, openpyxl def clean_phone(raw: str) -> str: digits = re.sub(r'\D', '', raw) if digits.startswith('8210'): digits = '0' + digits[2:] return f'{digits[:3]}-{digits[3:7]}-{digits[7:11]}' if len(digits) == 11 else raw 

Benchmark Results

Task Manual Time (Human) Python Pipeline Time
2,000 Product Images (3 sizes + EXIF scrub) ~14 hours 14.8 seconds
50,000 ERP Order Rows + Summary Formulas ~6 hours 8.2 seconds

What repetitive data or image workflows have you automated recently? Drop your favorite Python automation tricks in the comments!