{"id":13825713,"url":"https://github.com/LpCodes/LP-All-Images-Downloader","last_synced_at":"2025-07-08T22:31:58.070Z","repository":{"id":45663877,"uuid":"513915199","full_name":"LpCodes/LP-All-Images-Downloader","owner":"LpCodes","description":"A simple package to download all Images from the url provided","archived":false,"fork":false,"pushed_at":"2024-01-28T08:37:49.000Z","size":77,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-11-15T03:58:00.562Z","etag":null,"topics":["automation","download","downloader","pypi-package","python","python3","showcase"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/LpImagesDownloader/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LpCodes.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-07-14T13:36:43.000Z","updated_at":"2023-05-04T11:21:23.000Z","dependencies_parsed_at":"2024-01-13T16:25:46.211Z","dependency_job_id":"2b8d0eab-fb41-4c83-a258-f98ed09da834","html_url":"https://github.com/LpCodes/LP-All-Images-Downloader","commit_stats":{"total_commits":24,"total_committers":2,"mean_commits":12.0,"dds":0.04166666666666663,"last_synced_commit":"51e5788a50501afb3a738e995615886a083eaf0f"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LpCodes%2FLP-All-Images-Downloader","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LpCodes%2FLP-All-Images-Downloader/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LpCodes%2FLP-All-Images-Downloader/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LpCodes%2FLP-All-Images-Downloader/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LpCodes","download_url":"https://codeload.github.com/LpCodes/LP-All-Images-Downloader/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225165627,"owners_count":17431341,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","download","downloader","pypi-package","python","python3","showcase"],"created_at":"2024-08-04T09:01:25.726Z","updated_at":"2025-07-08T22:31:58.063Z","avatar_url":"https://github.com/LpCodes.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"![PyPI](https://img.shields.io/pypi/v/lpimagesdownloader)\r\n[![Downloads](https://static.pepy.tech/personalized-badge/lpimagesdownloader?period=total\u0026units=international_system\u0026left_color=black\u0026right_color=brightgreen\u0026left_text=Downloads)](https://pepy.tech/project/lpimagesdownloader)\r\n[![Publish Package](https://github.com/LpCodes/LP-All-Images-Downloader/actions/workflows/python-publish.yml/badge.svg)](https://github.com/LpCodes/LP-All-Images-Downloader/actions/workflows/python-publish.yml)\r\n\r\n# LP Images Downloader\r\n\r\nA powerful Python package to effortlessly download all images from any webpage. Built with Selenium and modern Python practices, this tool automates image scraping with robust error handling and detailed logging.\r\n\r\n## ✨ Features\r\n\r\n- **Dynamic Content Handling**: Automatically scrolls through pages to load dynamic images\r\n- **Robust Error Handling**: Comprehensive error catching and logging\r\n- **URL Validation**: Ensures all images are valid before downloading\r\n- **Customizable Save Locations**: Organizes downloaded images into folders based on page titles\r\n- **Detailed Logging**: Provides comprehensive logging of all operations\r\n- **Type Safety**: Full type hints for better code reliability\r\n- **Resource Management**: Proper cleanup of browser resources\r\n- **Progress Tracking**: Returns list of successfully downloaded files\r\n\r\n## 📦 Installation\r\n\r\nInstall the package from PyPI using pip:\r\n\r\n```bash\r\npip install LpImagesDownloader\r\n```\r\n\r\n### Requirements\r\n- Python 3.7+\r\n- Chrome browser installed\r\n- Internet connection\r\n\r\n## 🚀 Usage/Examples\r\n\r\n### Basic Usage\r\n\r\n```python\r\nfrom LpImagesDownloader import download_images\r\n\r\n# Download images from a webpage, scrolling 3 times to load dynamic content\r\ndownloaded_files = download_images(\"https://en.wikipedia.org/wiki/India\", 3)\r\nprint(f\"Successfully downloaded {len(downloaded_files)} images\")\r\n```\r\n\r\n### Advanced Usage with Error Handling\r\n\r\n```python\r\nfrom LpImagesDownloader import download_images\r\nimport logging\r\n\r\n# Configure logging\r\nlogging.basicConfig(\r\n    level=logging.INFO,\r\n    format='%(asctime)s - %(levelname)s - %(message)s'\r\n)\r\n\r\ntry:\r\n    # Download images with custom scroll count\r\n    downloaded_files = download_images(\"https://example.com\", 5)\r\n    print(f\"Successfully downloaded {len(downloaded_files)} images\")\r\n    \r\n    # Process downloaded files\r\n    for file_path in downloaded_files:\r\n        print(f\"Downloaded: {file_path}\")\r\n        \r\nexcept Exception as e:\r\n    logging.error(f\"Failed to download images: {e}\")\r\n```\r\n\r\n### Sample Output\r\n\r\n```\r\n2024-03-14 10:30:15 - INFO - Setting up environment...\r\n2024-03-14 10:30:16 - INFO - Loading URL: https://example.com\r\n2024-03-14 10:30:17 - INFO - Running operations in the background...\r\n2024-03-14 10:30:18 - INFO - Scrolling page 1...\r\n2024-03-14 10:30:20 - INFO - Scrolling page 2...\r\n2024-03-14 10:30:22 - INFO - Scrolling page 3...\r\n2024-03-14 10:30:23 - INFO - Total detected images on page: 25\r\n2024-03-14 10:30:24 - INFO - Downloading 1.jpg...\r\n2024-03-14 10:30:25 - INFO - Downloading 2.jpg...\r\n...\r\n2024-03-14 10:30:35 - INFO - Total images downloaded: 25\r\n2024-03-14 10:30:35 - INFO - You can view the saved images at: /path/to/Saved Images/Example\r\n```\r\n\r\n## 🔧 Configuration\r\n\r\nThe package uses sensible defaults but can be customized:\r\n\r\n- **Headless Mode**: Browser runs in headless mode by default\r\n- **Timeout**: Default page load timeout is 30 seconds\r\n- **Save Location**: Images are saved in a \"Saved Images\" directory with subdirectories based on page titles\r\n\r\n## 🛠️ Development\r\n\r\n### Setting up Development Environment\r\n\r\n1. Clone the repository:\r\n```bash\r\ngit clone https://github.com/LpCodes/LP-All-Images-Downloader.git\r\ncd LP-All-Images-Downloader\r\n```\r\n\r\n2. Install development dependencies:\r\n```bash\r\npip install -r requirements.txt\r\n```\r\n\r\n3. Run tests:\r\n```bash\r\npython -m pytest\r\n```\r\n\r\n## 🧑‍💻 Author\r\n\r\nCreated and maintained by [@LpCodes](https://github.com/LpCodes).\r\n\r\n## 📜 License\r\n\r\nThis project is licensed under the [MIT License](https://choosealicense.com/licenses/mit/). Feel free to use and modify it as needed.\r\n\r\n## 🤝 Contributing\r\n\r\nContributions are welcome! Here's how you can contribute:\r\n\r\n1. Fork the repository\r\n2. Create a new branch: `git checkout -b feature-name`\r\n3. Make your changes and commit them: `git commit -m 'Add feature-name'`\r\n4. Push to your branch: `git push origin feature-name`\r\n5. Open a pull request and describe your changes\r\n\r\n### Development Guidelines\r\n- Follow PEP 8 style guide\r\n- Add type hints to all functions\r\n- Include docstrings for all functions\r\n- Add tests for new features\r\n- Update documentation as needed\r\n\r\n## 🐛 Known Issues and Limitations\r\n\r\n- Some websites may block automated browsers\r\n- Very large pages may require more memory\r\n- Some dynamic content may not load properly\r\n\r\n## 🌟 Feedback \u0026 Suggestions\r\n\r\nHave ideas to improve the package or documentation? Open an issue on the [GitHub repository](https://github.com/LpCodes/LP-All-Images-Downloader/issues).\r\n\r\n## 📝 Additional Resources\r\n\r\n- **Bug Tracker**: [Report Issues](https://github.com/LpCodes/LP-All-Images-Downloader/issues)\r\n- **Source Code**: [GitHub Repository](https://github.com/LpCodes/LP-All-Images-Downloader)\r\n- **Documentation**: [Read the Docs](https://lpimagesdownloader.readthedocs.io/)\r\n\r\n---\r\n\r\nThank you for using LP Images Downloader! Your feedback helps make this project better. 😊\r\n\r\n\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FLpCodes%2FLP-All-Images-Downloader","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FLpCodes%2FLP-All-Images-Downloader","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FLpCodes%2FLP-All-Images-Downloader/lists"}