The Site Map Generator is a Python-based application with a graphical user interface (GUI) that allows users to generate a site map for a given website. It crawls through all pages within the specified domain and creates a comprehensive list of URLs, providing a clear overview of the website's structure.
- User-friendly PyQt6-based GUI
- Recursive crawling of websites within the same domain
- Progress bar to show crawling status
- Error handling for invalid URLs and network issues
- Multithreaded design for responsive UI during crawling
- Results displayed in an easy-to-read format
- Python 3.6 or higher
- PyQt6
- Requests
- BeautifulSoup4
- Ensure you have Python installed on your system.
- Install the required packages:
pip install PyQt6 requests beautifulsoup4
- Download the
SiteMapGenerator.exe
file from the latest release.
- Run the
SiteMapGenerator.exe
file. - Enter the URL of the website you want to generate a site map for in the input field.
- Click the "Generate Site Map" button.
- Wait for the crawling process to complete. You can monitor the progress in the progress bar and the text area below.
- Once completed, the site map will be displayed in the text area.
If you want to build the executable from source:
- Clone this repository or download the source files.
- Install PyInstaller:
pip install pyinstaller
- Run the setup script:
python setup.py
- The executable will be created in the
dist
folder.
- The crawler is set to a maximum depth of 5 levels to prevent excessive crawling.
- Only pages within the same domain as the initial URL are crawled.
- The application may take a while to complete for large websites.
- If you encounter any issues with crawling, ensure that you have a stable internet connection.
- Some websites may block automated crawling. In such cases, you may see error messages in the results.
- If the application freezes or becomes unresponsive, try closing and reopening it.
Contributions to improve the Site Map Generator are welcome. Please feel free to submit pull requests or create issues for bugs and feature requests.
This project is open-source and available under the MIT License.