Skip to main content

twidr

PyPI

🐦️ the Twitter–Wayback Machine Image Download Robot 🤖

twidr downloads images from the Wayback Machine's snapshots of a Twitter (X) account.

To be as kind as possible to Internet Archive's infrastructure, twidr rate-limits itself and creates an on-disk cache of the indices it gets from the Wayback Machine's APIs.

The Internet Archive plays a crucial role in preserving worldwide knowledge and combatting censorship. Donate!

installing

pipx is the preferred way to install twidr. Unlike pip alone: it automatically isolates the package from your other Python packages and puts the package in your PATH.

pipx install twidr

twidr supports argcomplete shell completions, which you can install for just twidr or all your Python packages.

do you really want to use pip?

pip is not recommended. On pip systems, for global installation:

pip install twidr

usage

Alongside its cached indices of Wayback Machine query results, twidr saves its progress as it downloads files. This lets you start a long-running download, pause it, and come back to it.

examples

Download all the images archived from user @openSUSE into a new directory called opensuse:

twidr opensuse

Download images into the current directory:

twidr opensuse --output .
twidr opensuse -o .

See all of twidr's options with twidr --help.

developing and building

This project uses uv.

Clone the repository with Git and use uv to install dependencies:

git clone git@github.com:solanto/twidr.git
cd twidr
uv sync

Run the program in development with uv run:

uv run twidr

And build the package with uv build:

uv build

contributing

Feel free to ask questions or make suggestions here or at person@dandelion.computer. I'll do my best to collaborate with those who'd like to!

If you fork twidr, be sure to change lib.meta:ORG_DOMAIN to your own domain (which could even be something like your-username.github.io). twidr uses this identifier to tell Internet Archive's servers exactly whose code is requesting information.

license

GNU General Public License v3.0 or later. See license in LICENSE.md.

Metadata

Release files for twidr 0.4

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

Source distribution (sdist)

Source distribution for twidr 0.4
File Size Uploaded Provenance Actions
twidr-0.4.tar.gz 24.3 kB Without provenance Details for twidr-0.4.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for twidr 0.4
File Interpreter ABI Platform Actions
twidr-0.4-py3-none-any.whl Python 3 none any Details for twidr-0.4-py3-none-any.whl

Total release size: 49.5 kB

Release files / twidr-0.4.tar.gz

Download URL twidr-0.4.tar.gz
Size 24.3 kB
Tags Source
SHA-256 checksum
How to use checksums
8a9f225640ba1f71e1720556e4daa25a211eaf04b9c5327872b711705e371472
BLAKE2b-256 checksum
How to use checksums
78d7150e8253209b6e633d9e9177306daea6367eb12c39e523d1c6d84e2fd775
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.3 {"installer":{"name":"uv","version":"0.13.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"openSUSE Tumbleweed","version":"20261021","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / twidr-0.4-py3-none-any.whl

Download URL twidr-0.4-py3-none-any.whl
Size 25.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b3011a2f1c281df0f46d0742215b33a7e7ccdd070ed4708d0e09aadbd8b8eeb9
BLAKE2b-256 checksum
How to use checksums
57ce1e952b8d12c3ab3b74c85553e3c85553e0d17e7831ca24bd41f5bbe50b4f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.3 {"installer":{"name":"uv","version":"0.13.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"openSUSE Tumbleweed","version":"20261021","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Security for twidr 0.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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