Automatically track and record records for NVC shipments!
pip install nvc-dhl-tracker
Or clone from github and run
pip install -e "."
- Follow the gspread documentation to create a service account: https://docs.gspread.org/en/latest/
- Copy the URL of the google spreadsheet
- Create a new sheet in the document and copy the ID out of the URL, this will be the tracking sheet ID.
Then run
i129f_nvc_tracker
And answer the questions it asks. You should be able to let this run indefinitely, but eventually the database will fill up.
Before running as a systemd service you should run the command with a --start-number to seed the database. Otherwise if the service crashes it will restart from the previous start number which may be significantly out of date.
/root/i129fvenv/bin/python -m i129f.nvc_dhl_tracker.cli --no-input --dhl-keys [..., ...] --start-number [...] --google-spreadsheet-url [...] --google-sheet-id [...]
The command below does not include --start-number to make it easier to copy and paste.
[Unit]
Description=i129f SystemD Service
[Service]
ExecStart=/root/i129fvenv/bin/python -m i129f.nvc_dhl_tracker.cli --no-input --dhl-keys [..., ...] --google-spreadsheet-url [...] --google-sheet-id [...]
Restart=on-failure
[Install]
WantedBy=multi-user.target
- no-input: This disables any input from the command, so that it won't interrupt a daemonized service
- dhl-keys: The keys to use with the DHL API
- start-number: The number from which to start polling
- google-spreadsheet-url: The URL of the Google spreadsheet
- google-sheet-id: The ID of the sheet in the spreadsheet to use. This is appended to the URL if you view the spreadsheet in your browser.
This project uses pre-commit, please make sure to install it before making any changes:
pip install pre-commit
cd nvc-dhl-tracker
pre-commit install
It is a good idea to update the hooks to the latest version:
pre-commit autoupdate
Don't forget to tell your contributors to also install and use pre-commit.
This project has been set up using PyScaffold 4.5. For details and usage information on PyScaffold see https://pyscaffold.org/.