An unofficial library that wraps the anonfile.com REST API.
Project description
Anonfiles.com Unofficial Python API
This unofficial Python API was created to make uploading and downloading files from https://anonfiles.com simple and effective for programming in Python. The goal of the project is to create an intuitive library for anonymous file sharing.
Getting Started
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
Prerequisites
Python 3.8+ is required to run this application, other than that there are no prerequisites for the project, as the dependencies are included in the repository.
Installing
To install the library is as simple as running
pip install anonfile
from the command line. To install this library in debug mode with dev dependencies, use
pip install -e .[dev]
instead. It is recommended to create an virtual environment prior to installing this library. If you only intend to use this library from the CLI, use pipx for the installation instead:
pipx install anonfile
Dev Notes
Run unit tests locally:
pytest --verbose -s [--token "REDACTED"]
Add the -k test_*
option if you want to test only a single function.
Usage
Import the module and instantiate the AnonFile()
constructor. Setting the download
directory in path
is optional. Using the API token
in the constructor is optional
as well. A valid token
registers all file uploads online, i.e. a list of all uploaded
files is made accessible to any user that signs into your account.
from anonfile import AnonFile
anon = AnonFile()
# upload a file and enable progressbar terminal feedback (off by default)
upload = anon.upload('/home/guest/jims_paperwork.doc', progressbar=True)
print(upload.url.geturl())
# download a file and set the download directory
from pathlib import Path
target_dir = Path.home().joinpath('Downloads')
download = anon.download("https://anonfiles.com/9ee1jcu6u9/test_txt", path=target_dir)
print(download.file_path)
And voilà, pain-free anonymous file sharing. If you want more information about
the AnonFile
API visit anonfiles.com.
Command Line Interface
# open help page for specific commands
anonfile [download|upload|preview|log] --help
# note: both methods expect at least one argument, but can take on more
anonfile download --url https://anonfiles.com/93k5x1ucu0/test_txt
anonfile upload --file ./test.txt
Built With
- Requests - Http for Humans
- TQDM - Fast & Extensible Progress Bars
- anonfiles.com - AnonFiles.com REST API
Versioning
Navigate to tags on this repository to see all available versions.
Authors
Name | Mail Address | GitHub Profile |
---|---|---|
Nicholas Strydom | nstrydom@gmail.com | nstrydom2 |
hentai-chan | dev.hentai-chan@outlook.com | hentai-chan |
Stefan Greve | greve.stefan@outlook.jp | StefanGreve |
See also the list of contributors who participated in this project.
License
This project is licensed under the MIT License - see the LICENSE file for more details.
Acknowledgments
- Joseph Marie Jacquard
- Charles Babbage
- Ada Lovelace
- My Dad
- Hat tip to anyone whose code was used
- Inspiration
- etc
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file anonfile-1.0.0.tar.gz
.
File metadata
- Download URL: anonfile-1.0.0.tar.gz
- Upload date:
- Size: 14.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.8.17
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d64f5180d6d400098ae32eeb62a0b82b7095f1cdcda0bcacfe71d91ac3bc03ec |
|
MD5 | 2da1461a0dc23c78e2195590ad8809af |
|
BLAKE2b-256 | e18fe1be335debd44eebc7f64528f6b486ba1386eb7d5bd87acf5313d88ba5d1 |
File details
Details for the file anonfile-1.0.0-py3-none-any.whl
.
File metadata
- Download URL: anonfile-1.0.0-py3-none-any.whl
- Upload date:
- Size: 11.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.8.17
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5ced0a6d495d11ae20d41450184fffb84f8228bd0ccb147edaad0ec8a8d60fbd |
|
MD5 | 4d908ddb7d68b676f170625655ce0048 |
|
BLAKE2b-256 | 198fde483fef542f524bd9cb7feaec0c3ff3f5778535a07a5c06dec358661d01 |