Skip to main content

PTPImg uploader, handles local files and URLs, from the commandline

Project description

PyPI version Build Status

Upload image file or image URL to the ptpimg.me image hosting.

Features

  • Upload local image files

  • Rehost images from image services (e.g., from imgur)

  • Copy resulting URL to clipboard

  • BBCode formatting support

  • Command-line and programmatic usage

Installation

Using pip (traditional install):

pip install ptpimg_uploader

This places ptpimg_uploader on your PATH — run it directly afterwards:

ptpimg_uploader image.jpg

To upgrade an existing installation:

pip install --upgrade ptpimg_uploader

Using uv (no Python setup required):

Install uv from https://docs.astral.sh/uv/getting-started/installation/, then:

Install permanently and run as a regular command (same workflow as pip):

uv tool install ptpimg_uploader
ptpimg_uploader image.jpg

To upgrade:

uv tool upgrade ptpimg_uploader

Run once without installing (useful for trying it out):

uvx ptpimg_uploader image.jpg

Run the raw script directly (uv auto-installs dependencies):

uv run ptpimg_uploader.py image.jpg

Manual Dependencies:

  • Required: requests package
    • Debian/Ubuntu: apt-get install python3-requests

    • Other systems: pip3 install requests

  • Optional: pyperclip package for clipboard support
    • Install via: pip3 install pyperclip

    • With uv: uv run --with pyperclip ptpimg_uploader.py --clip image.jpg

API Key Setup

  1. Login to https://ptpimg.me

  2. Open browser developer tools (View -> Developer -> View Source in Chrome)

  3. Find api_key in the page source

  4. Copy the hexadecimal string (format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)

Set your API key using either:

Environment variable (recommended):

# Add to your ~/.bashrc or ~/.zshenv
export PTPIMG_API_KEY=your-api-key-here

Or use the command-line option: -k / --api-key

Usage

Get help:

ptpimg_uploader -h

Upload a local image:

ptpimg_uploader ~/seed/mytorrent/folder.jpg

Rehost from URL:

ptpimg_uploader https://i.imgur.com/eaT6j3X.jpg

Multiple uploads (mix-and-match files and URLs):

ptpimg_uploader ~/seed/mytorrent/folder.jpg https://i.imgur.com/eaT6j3X.jpg

Additional command-line options

  • --bbcode: URLs will be wrapped in BBCode [img] tags

ptpimg_uploader --bbcode ~/seed/mytorrent/folder.jpg
  • --clip: Place a resulting URL to clipboard (if pyperclip package is installed)

ptpimg_uploader --clip ~/seed/mytorrent/folder.jpg
  • --nobell: Disable completion sound. If output is a terminal, a bell will be ringed on completion.

Programmatic Usage

The package can be used as a library via the upload function for programmatic access.

License

BSD

Acknowledgments

  • mjpieters - a great refactoring and Python packaging

  • lukacoufyl - fixing image upload order

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ptpimg_uploader-0.14.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ptpimg_uploader-0.14-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

Details for the file ptpimg_uploader-0.14.tar.gz.

File metadata

  • Download URL: ptpimg_uploader-0.14.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ptpimg_uploader-0.14.tar.gz
Algorithm Hash digest
SHA256 c946a73f604e476075d6cede35199041fc518ed107674ddd1518c3dc96c455b0
MD5 99cb17dde051a100ce4795f414880d45
BLAKE2b-256 18226439fcde1ca4bc510c109274fb154dcc232fb4d27efe3293eeecc08a857a

See more details on using hashes here.

Provenance

The following attestation bundles were made for ptpimg_uploader-0.14.tar.gz:

Publisher: pythonpublish.yml on theirix/ptpimg-uploader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ptpimg_uploader-0.14-py3-none-any.whl.

File metadata

  • Download URL: ptpimg_uploader-0.14-py3-none-any.whl
  • Upload date:
  • Size: 6.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ptpimg_uploader-0.14-py3-none-any.whl
Algorithm Hash digest
SHA256 55597889b6b6e8ed9a3854146d4978889a40752df62f79ac36094b04c4c1f914
MD5 4a181f4f404d9b00378c39fec0c75d44
BLAKE2b-256 d22c5bc9036ca8fb155a0e83d6f2b0c6396f2cb833f30dce2b352d7a01a43cfe

See more details on using hashes here.

Provenance

The following attestation bundles were made for ptpimg_uploader-0.14-py3-none-any.whl:

Publisher: pythonpublish.yml on theirix/ptpimg-uploader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page