flights/README.md

119 lines
3.7 KiB
Markdown

# Flight history backup and display scripts
## Introduction
These Python scripts allow you to automate the process of downloading and
displaying your flight history from OpenFlights. You can use the backup script
to regularly download a CSV backup of your flight data, and the display script
to list your past and future flights. This README will guide you through
setting up and using these scripts.
## Prerequisites
Before you begin, make sure you have the following requirements installed:
- Python 3.x
- [Playwright](https://playwright.dev/) for web automation (used by the backup
script)
## Installation
1. Clone or download this repository to your local machine.
```bash
git clone https://git.4angle.com/edward/flights.git
```
2. Install the required Python modules for the scripts.
```bash
pip install playwright
```
3. Create a configuration file for your OpenFlights account. You can use the
provided sample config file as a template (`config`). Update the `username`
and `password` fields with your OpenFlights login credentials.
```ini
[backup]
backup_dir=/path/to/backup/directory
username=YourOpenFlightsUsername
password=YourOpenFlightsPassword
[history]
days=120
```
## Usage
### Backup Script (`run_backup`)
The backup script automates the process of downloading a CSV backup of your
flight history from OpenFlights. You can schedule this script to run
periodically, such as daily using cron.
1. Open your terminal and navigate to the directory where you cloned or
downloaded the scripts.
2. Run the backup script:
```bash
python run_backup.py
```
This script will launch a headless browser, log in to your OpenFlights
account, and download the CSV backup to the specified directory in your
configuration file.
3. You can schedule this script to run daily using cron or any other scheduling
tool. For example, to run it every day at 2 AM, add the following line to
your crontab:
```bash
0 2 * * * /usr/bin/python3 /path/to/openflights-scripts/run_backup
```
### Display Script (`flights`)
The display script reads the downloaded CSV backup and displays a list of your
past and future flights within a specified date range.
1. Open your terminal and navigate to the directory where you cloned or
downloaded the scripts.
2. Run the display script:
```bash
python flights
```
This script will read the most recent CSV backup file in the specified
directory, filter flights based on the configured date range, and display the
results.
### Sample Output
Here is an example of the output you can expect from the display script:
```
Tue, 27 Jun 2023 94 days ago LHR -> TIA 03:05 British Airways BA926 C 1A G-EUYB Airbus A320-232
Sat, 01 Jul 2023 90 days ago TIA -> LHR 03:05 British Airways BA929 C 3A G-EUUR Airbus A320-232
...
Sun, 17 Sep 2023 12 days ago DOH -> LHR 07:20 Qatar Airways QR15 C 1K A7-BAF Boeing 777-300ER
Tue, 14 Nov 2023 46 days LHR -> MAD 02:30 Iberia Airlines IB3173 Y 12A Airbus A320
Tue, 14 Nov 2023 46 days MAD -> MVD 11:56 Iberia Airlines IB6011 Y 41A Airbus A330-200
Mon, 20 Nov 2023 52 days MVD -> MAD 12:55 Iberia Airlines IB6012 C 2A Airbus A330-200
Tue, 21 Nov 2023 52 days MAD -> LHR 02:35 Iberia Airlines IB3162 C 4A Airbus A330
```
## Customization
You can customize the scripts further by modifying the configuration file
(`config`) or the scripts themselves. For example, you can adjust the number of
days to look back for past flights or customize the display format.
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file
for details.