A Python-based application designed to periodically scan a specific website for new tour event announcements. Upon detecting a new event that hasn't been previously recorded, the system sends an email notification and saves the event for future reference.
- Automated web scraping of a target URL for event data.
- Detection of new tour events based on historical data.
- Email notifications upon detecting new events.
- Persistent storage of detected events.
- Python
- Requests: For making HTTP requests.
- Selectorlib: For data extraction from web pages.
- smtplib & ssl: For sending email notifications.
- os & python-dotenv: For environment variable management.
- Ensure you have Python installed on your machine.
- Clone the repository: git clone https://github.com/IsraelAzoulay/tour-notifier.git
- Navigate to the project directory.
- Install the required libraries using the command: pip install -r requirements.txt
- Set up your
.env
file with your email credentials (SENDER_EMAIL, SENDER_PASSWORD, RECEIVER_EMAIL). - Run
main.py
: python main.py - The system will start monitoring the specified URL and notify you when new events are detected.
- main.py: The main script that monitors the webpage and manages notifications.
- data.txt: Contains a record of detected events.
- extract.yaml: Selector template for data extraction.
- requirements.txt: Contains the required Python libraries for the project.
- .gitignore: Specifies files and directories that are to be ignored by Git.
Feel free to fork this repository, make changes, and submit pull requests. Any feedback or suggestions are welcome!
This project is licensed under the MIT License.