Skip to main content

Greek Parcel CLI

A command-line interface (CLI) tool for tracking parcels from various Greek courier services. Built with Python, Typer, and Rich.

Features

  • Multi-Courier Support: Track packages from major Greek courier companies.
  • Smart Detection: Automatically identifies the courier based on the tracking number format.
  • Watch Mode: Real-time polling with desktop notifications for status updates.
  • Tracking History: Save and manage your parcels for easy status updates.
  • Rich Output: Beautiful terminal output with tables and status indicators.
  • JSON Output: Optional JSON output for programmatic integration (e.g., widgets, scripts).
  • Easy to Use: Simple CLI commands for quick tracking.
  • Improved Reliability: Uses random User-Agents to mimic real browser traffic and avoid blocking.

Supported Couriers

The following courier services are currently supported:

  • ACS (acs)
  • Courier Center (couriercenter)
  • EasyMail (easymail)
  • ELTA (elta)
  • Geniki Taxydromiki (geniki)
  • Skroutz Last Mile (skroutz)
  • Speedex (speedex)
  • BoxNow (boxnow)

Installation

Prerequisites

  • Python 3.9 or higher

The easiest way to install Greek Parcel CLI is using pip:

pip install greek-parcel-cli

After installation, the greek-parcel command will be available globally:

# List all supported couriers
greek-parcel list

# Track a parcel (auto-detects courier)
greek-parcel track <number>

# Track with a specific courier
greek-parcel track <number> -c <courier>

# Output as JSON (for integration with scripts/widgets)
greek-parcel track <number> --json

# Track and auto-save (skip prompt)
greek-parcel track <number> --save

# Track and do NOT save (skip prompt)
greek-parcel track <number> --no-save

# List tracking history
greek-parcel history

# Assign an alias to a saved parcel
greek-parcel rename <number> "New Laptop"

# Refresh all saved parcels
greek-parcel refresh

# Watch a parcel for updates (sends desktop notification)
greek-parcel watch <number>

# Watch with custom interval (e.g., every 5 minutes)
greek-parcel watch <number> --interval 300

# Remove a parcel from history
greek-parcel forget <number>

Install from Source

  1. Clone the repository:

    git clone https://github.com/yourusername/Greek-Parcel-CLI.git
    cd Greek-Parcel-CLI
    
  2. Sync dependencies and create environment:

    uv sync
    

Using pip

  1. Clone the repository and enter the directory.
  2. Create and activate a virtual environment:
    python -m venv .venv
    # Windows
    .venv\Scripts\activate
    # Linux/macOS
    source .venv/bin/activate
    
  3. Install the package:
    pip install -e .
    

Usage

Using uv (No installation required)

You can run the tool directly without manual installation:

uv run greek-parcel list
uv run greek-parcel track <number>

After Installation

If you installed via pip or uv sync, the greek-parcel command will be available:

greek-parcel list
greek-parcel track <number>

Development

This project uses modern Python tooling.

  1. Install dependencies:

    pip install -r requirements.txt
    
  2. Run the CLI directly during development:

    python -m greek_parcel list
    python -m greek_parcel track <number>
    

Contributing

Contributions are welcome! This project supports multiple courier services, but I cannot verify that all of them work correctly without real tracking numbers.

How You Can Help

  • Share Tracking Numbers: If you have a tracking number from any supported courier that you can share (anonymized if needed), please open an issue. This helps verify that the tracking functionality works correctly.

  • Report Issues: Found a bug or a courier that's not working? Please open an issue with details about the problem.

  • Fork and Contribute: Feel free to fork the repository, make improvements, and submit a pull request. Whether it's fixing bugs, adding new features, or improving documentation, all contributions are appreciated!

Getting Started

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Make your changes
  4. Commit your changes (git commit -m 'Add some amazing feature')
  5. Push to the branch (git push origin feature/amazing-feature)
  6. Open a Pull Request

Acknowledgements

Special thanks to Daniel Pikilidis and his project Greek-Courier-API for providing the endpoints and selectors used in this project.

License

MIT License

Metadata

Release files for greek-parcel-cli 0.5.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for greek-parcel-cli 0.5.0
File Size Uploaded
greek_parcel_cli-0.5.0.tar.gz 19.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for greek-parcel-cli 0.5.0
File Interpreter ABI Platform
greek_parcel_cli-0.5.0-py3-none-any.whl Python 3 none any Details

Total release size: 45.6 kB

Release files / greek_parcel_cli-0.5.0.tar.gz

Download URL greek_parcel_cli-0.5.0.tar.gz
Size 19.7 kB
Tags Source
SHA-256 checksum
How to use checksums
225dfa1d6deb3e351c54e62a3ba1e39555fa48e9eba04b450bf12088e167a1c1
BLAKE2b-256 checksum
How to use checksums
9c6c3c99a47c4b15b3365d45cfa9c67415a2c043933cd03973f763b53245912e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.5

Release files / greek_parcel_cli-0.5.0-py3-none-any.whl

Download URL greek_parcel_cli-0.5.0-py3-none-any.whl
Size 25.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5ccc92d73f4ab77978039b31de9e8cb7f2392aff2c0bcf5e176f43092d0e6481
BLAKE2b-256 checksum
How to use checksums
ec22c69d83eda220a4fe4a95f4a4bc45f704bac5a2ab35cf57bba34718444033
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.5

Release history Release notifications | RSS feed

This release

0.5.0 This release

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page