DEV Community

Cover image for Bulk Image Downloader from Excel with Product Name (Anti-CAPTCHA + Auto-ZIP)
Hari Om Patel
Hari Om Patel

Posted on

Bulk Image Downloader from Excel with Product Name (Anti-CAPTCHA + Auto-ZIP)

If you've ever tried building an E-commerce catalog, digital canteen menu, or an AI training dataset, you probably know the pain: you have a list of hundreds of product names in an Excel sheet, but no images.

When you search for a solution like "bulk image downloader through excel with product name", almost every existing tool fails because:

  1. They expect direct image URLs, not simple product names.
  2. Google blocks automated requests with CAPTCHAs after just 5–10 searches.
  3. Images are messy (recipe screenshots, watermarked logos, or low-res thumbnails).

To solve this once and for all, I built and open-sourced Universal Google Image Bulk Downloader Pro — a Python automation tool that takes product names directly from an Excel/CSV sheet, fetches high-resolution images, and automatically packages everything into a ZIP file.

GitHub Repo: https://github.com/hariompatel61/universal-image-downloader


⚡ What Makes This Different?

Feature Regular Image Scrapers Universal Image Downloader Pro
Input Format Direct image URLs only Plain Product Names in Excel / CSV
Anti-CAPTCHA ❌ Gets blocked fast undetected-chromedriver session profile
Search Quality ❌ Random messy photos ✅ Stock sites first (Freepik, Unsplash, Pexels)
Packaging ❌ Manual Automatic ZIP Archive (.zip)
Resume Support ❌ Redownloads everything ✅ Smart Skip logic (>5KB)

🛠️ How It Works (Under the Hood)

1. Two-Tier Smart Search Strategy

  • Tier 1 (Stock Photography First): It first searches Google specifically targeting curated high-res stock sources (Freepik, Unsplash, Pexels, Pixabay).
  • Tier 2 (Filtered Fallback): If no stock image matches, it falls back to Google Images while automatically stripping noisy terms like -recipe, -video, -youtube.

2. Bypass CAPTCHA with Persistent Sessions

Using undetected-chromedriver and a dedicated user profile folder (chrome_profile/), you only solve a CAPTCHA once (if prompted). Subsequent runs retain session cookies, preventing Google from throwing bot challenges.

3. Automatic ZIP & Audit Trail

Once all rows are processed:

  • All valid images are bundled into <output_folder>.zip (e.g., product_images.zip).
  • A clean .csv audit report is generated listing item status, file names, and download sources.

🚀 Quick Start Guide

Step 1: Clone & Install Dependencies


bash
git clone https://github.com/hariompatel61/universal-image-downloader.git
cd universal-image-downloader
pip install -r requirements.txt
Enter fullscreen mode Exit fullscreen mode

Top comments (0)