Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/iytdl/iytdl

Async Inline YouTube-DL for Pyrogram based Bots
https://github.com/iytdl/iytdl

hacktoberfest pyrogram python youtube youtube-dl youtube-downloader yt-dlp

Last synced: 23 days ago
JSON representation

Async Inline YouTube-DL for Pyrogram based Bots

Awesome Lists containing this project

README

        


# iYTDL

License: GPLv3
Actions Status
PyPI
Downloads
Code style: black

Async Inline YouTube-DL for Pyrogram based Bots

## ⬇️ Installation

> Install

```bash
pip3 install iytdl
```

> Upgrade

```bash
pip3 install -U iytdl
```

> Build Wheel Locally

```bash
git clone https://github.com/iytdl/iytdl.git
cd iytdl
poetry install

chmod +x scripts/install.sh && ./scripts/install.sh
```

## Features

- Async and memory efficient (uses Aiosqlite for Caching)
- Uses hashing avoid storing duplicate data
- Supports context manager
- Supports External Downloader [[Aria2c](https://github.com/iytdl/iytdl/blob/master/tests/test_download_upload.py#L20)]
- [Supported Sites](https://github.com/yt-dlp/yt-dlp/blob/master/supportedsites.md)

## Requirements

- [YT-DLP](https://github.com/yt-dlp/yt-dlp) (Active youtube-dl fork)
- [Python](https://www.python.org/) >=3.8,<4
- [Pyrogram](https://docs.pyrogram.org/) based Bot
- [FFmpeg](http://ffmpeg.org/)
- [Aria2c](https://aria2.github.io/) (_Optional_)

## Pre-commit Hooks

- [Install Pre-commit Hooks](https://pre-commit.com/#installation)
- `pre-commit install`

## Examples

### Callbacks

OPEN

- Back and Next

```python
r"^yt_(back|next)\|(?P[\w-]{5,11})\|(?P\d+)$"
```

- List View

```python
r"^yt_listall\|(?P[\w-]{5,11})$"
```

- Extract Info

```python
r"^yt_extract_info\|(?P[\w-]{5,11})$"
```

- Download

```python
r"yt_(?Pgen|dl)\|(?P[\w-]+)\|(?P[\w-]+)\|(?Pa|v)$"
```

- Cancel

```python
r"^yt_cancel\|(?P[\w\.]+)$"
```

### Module

### [YouTube.py](https://github.com/code-rgb/droid/blob/master/droid/modules/youtube.py)

## Screenshots
- **Telegram Bot:** https://t.me/iytdl_bot

>