https://github.com/scrazzz/redgifs
Simple Python API wrapper for the RedGIFs API
https://github.com/scrazzz/redgifs
aiohttp async asyncio cli cli-downloader easy-to-use nsfw python python3 redgifs redgifs-downloader requests sync
Last synced: 19 days ago
JSON representation
Simple Python API wrapper for the RedGIFs API
- Host: GitHub
- URL: https://github.com/scrazzz/redgifs
- Owner: scrazzz
- License: mit
- Created: 2022-03-02T14:50:42.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2025-04-01T00:44:24.000Z (about 1 month ago)
- Last Synced: 2025-04-04T01:08:59.380Z (28 days ago)
- Topics: aiohttp, async, asyncio, cli, cli-downloader, easy-to-use, nsfw, python, python3, redgifs, redgifs-downloader, requests, sync
- Language: Python
- Homepage: https://redgifs.rtfd.io
- Size: 711 KB
- Stars: 110
- Watchers: 4
- Forks: 14
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
redgifs
Async and Sync Python Wrapper for the RedGIFs API.
-----
> ⭐ _Please star this repo to support the developer and to encourage the development of this project!_
-----
### Installation
```
pip install -U redgifs
```> [!IMPORTANT]
> - It is advised to install the [Development version](####development-version) because v2.0 has a lot of bugs
> - A new v2.1 version will be released soon with major breaking changes#### Development version
```
pip install -U git+https://github.com/scrazzz/redgifs
````redgifs` works on Python versions 3.8 and above.
-----
### Quickstart
#### 1. Command Line:```console
$ redgifs --help
Usage: redgifs [OPTIONS] [URLS]...Options:
-v, --version Shows currently installed version.
-q, --quality [sd|hd] Video quality of GIF to download. [default: hd]
-f, --folder FOLDER_NAME The folder to save the downloads to.
-i, --input FILE_NAME Download URLs from a newline seperated txt file.
--images Download only images from a user profile.
--help Show this message and exit.
```Examples:
```console
$ # Download files to a folder
$ ls
Home Downloads Homework Music
Backup Documents Videos Games
$ redgifs https://redgifs.com/watch/xyz --quality sd --folder Homework
Downloading xyz...
Download complete
$ ls Homework
xyz.mp4
``````console
$ # Download GIFs from a file that contains a list of URLs
$
$ # urls.txt:
$ # https://redigfs.com/watch/xyz
$ # https://redigfs.com/watch/qwe
$ # https://redigfs.com/watch/abc
$ # https://redigfs.com/watch/rst$ redgifs -i urls.txt
Downloading xyz...
Download complete
Downloading qwe...
``````console
$ # Download all GIFs from a user's profile
$ mkdir rg_vids
$ redgifs https://redgifs.com/users/usernamethatexists -f rg_vids
Downloaded 1/3 GIFs
Downloaded 2/3 GIFs
Downloaded 3/3 GIFs
...
Downloaded 3/3 videos of user usernamethatexists to folder rg_vids sucessfully!
```#### 2. Synchronous usage:
```py
import redgifsapi = redgifs.API()
api.login() # Login with temporary token
response = api.search('3D')
print(response)
api.close()
```#### 3. Asynchronous usage:
```py
import asyncio
from redgifs.aio import API # note thisasync def main():
api = API()
await api.login() # Login with temporary token
response = await api.search('3D')
print(response)
await api.close()loop = asyncio.get_event_loop()
loop.run_until_complete(main())
```More examples can be found in the examples directory.
-----
### Links
- [Documentation](https://redgifs.readthedocs.io)
- [Discord](https://discord.gg/NtAJMCcTd4)
- [Examples](https://github.com/scrazzz/redgifs/tree/main/examples)