Pinterest Media Downloader is a Streamlit-based desktop/web app to download images and videos from Pinterest pins, boards, and profiles—quickly and reliably.
- 🎉 Initial release with core download and UI functionality
- 🔄 Improved URL normalization & validation
- 🕸️ Enhanced fallback scraping for robust media extraction
- ⚙️ Better error handling and user feedback
- 🖱️ Cleaner UI with quick-select buttons (“First 5”, “First 10”, “All Files”)
- 📥 Download images & videos from Pinterest pins, boards, profiles
- 🔄 Dual extraction methods: gallery-dl + custom BeautifulSoup fallback
- 📦 Save media as original files or bundled ZIP archive
- ⚡ Quality & advanced settings: timeout, retries, concurrency
- 👁️🗨️ Media preview cards with progress tracking
- 🎛️ Professional Streamlit UI with sidebar settings & live metrics
Pinterest-Media-Downloader/
├── LICENSE # MIT license
├── README.md # This file
├── requirements.txt # Python dependencies
├── src/ # Source directory
| └── main.py # Streamlit app entry point
├── favicon.ico # App icon
└── screenshots/ # UI previews
└── screenshot.png
- Python 3.8+
- pip package manager
- Streamlit
- gallery-dl
- requests
- beautifulsoup4
- Pillow
- lxml
Install via:
pip install -r requirements.txt
Or manually:
pip install streamlit gallery-dl requests beautifulsoup4 pillow lxml
-
Clone the repo
git clone https://github.com/ukr-projects/pinterest-media-scraper.git cd pinterest-media-scraper/src
-
Install dependencies
pip install -r ../requirements.txt
-
Run the app:
streamlit run src/main.py
-
Enter a Pinterest URL (pin, board, or profile)
-
Click “🔍 Analyze URL” to fetch media links
-
Choose how many files to download or use quick-select
-
Click “🚀 Start Download” to save images/videos (ZIP option available)
-
Monitor progress and download individual files or archive
-
Fork the repository
-
Create a branch:
git checkout -b feature/YourFeature
-
Implement your changes & commit
-
Push and open a Pull Request
- Streamlit for rapid UI development
- gallery-dl for Pinterest extraction
- BeautifulSoup for HTML parsing
- Requests for HTTP sessions
- Pillow for media handling
If you find this project useful, please consider giving it a star on GitHub! Your support helps us continue improving and maintaining this tool.
- GitHub Issues: Report bugs or request features
- Discussions: Community discussions and Q&A
- Email: [email protected]
Made with ❤️ by the Ujjwal Nova