Wheelie Fresh Bins Cleaning schedule retrieval https://edwardbetts.com/bin_clean/
Find a file
2023-12-21 14:29:01 +00:00
templates Initial commit 2023-10-03 11:56:38 +01:00
.gitignore Initial commit 2023-10-03 11:56:38 +01:00
LICENSE Initial commit 2023-10-03 11:56:38 +01:00
README.md Initial commit 2023-10-03 11:56:38 +01:00
schedule.py Replace datetime.utcnow(), it is deprecated 2023-12-21 14:29:01 +00:00

Wheelie Fresh Bins cleaning schedule retrieval

Overview

schedule.py is a Python script designed to retrieve the cleaning schedule information from Wheelie Fresh Bins and save it as HTML and an ICS (iCalendar) file. This tool automates the process of accessing your cleaning schedule and provides you with easily accessible calendar data.

Prerequisites

Before using this script, make sure you have the following prerequisites:

  • Python 3
  • Required Python modules: ics, jinja2, lxml, and requests.
  • Playwright (used for headless web scraping).

Installation

  1. Clone or download this repository to your local machine.

  2. Install the required Python modules by running:

    pip install playwright lxml ics jinja2 requests
    
  3. Make sure you have the Playwright dependencies installed for your platform. You can follow the installation instructions for Playwright here.

  4. Customize the configuration in the config file to match your requirements.

Usage

To use the script, run it from the command line:

python schedule.py

The script will log in to the Wheelie Fresh Bins website, retrieve your cleaning schedule, and save it as an HTML file (dest) and an ICS file (ics_file). The HTML file can be opened in a web browser, while the ICS file can be imported into your favorite calendar application.

Scheduling with Crontab

You can automate the execution of schedule.py by scheduling it to run once per day using the crontab utility. Here's how to do it:

  1. Edit your crontab file using the following command:

    crontab -e
    
  2. Add the following line to schedule the script to run daily at a specific time. Replace /path/to/schedule.py with the actual path to your schedule.py script:

    0 0 * * * /usr/bin/python3 /path/to/schedule.py
    

    This example schedules the script to run every day at midnight. You can adjust the time and frequency according to your preferences. Save the crontab file.

  3. Crontab will automatically execute the script at the specified time each day, and the schedule data will be updated accordingly.

Customization

  • You can customize the script's behavior by editing the configuration in the config file, such as specifying your login credentials, file paths, and other options.

  • The script uses Jinja2 templates to render the HTML output. You can modify the HTML template in the templates directory to change the appearance of the schedule.

Author

This script was created by Edward Betts (edward@4angle.com). Feel free to contact me for support or improvements.

License

This project is licensed under the MIT License - see the LICENSE file for details.