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

https://github.com/5hojib/truelink

TrueLink is an asynchronous Python library that simplifies the process of extracting direct download links from a wide range of media file hosting services. It supports both individual files and folder-based downloads, offering a clean and extensible API with built-in URL validation and robust error handling.
https://github.com/5hojib/truelink

aiohttp directlink downloadlink python scraper

Last synced: 5 months ago
JSON representation

TrueLink is an asynchronous Python library that simplifies the process of extracting direct download links from a wide range of media file hosting services. It supports both individual files and folder-based downloads, offering a clean and extensible API with built-in URL validation and robust error handling.

Awesome Lists containing this project

README

          

# TrueLink

[![PyPI version](https://img.shields.io/pypi/v/truelink.svg)](https://pypi.org/project/truelink/)
[![Downloads](https://static.pepy.tech/badge/truelink/month)](https://pepy.tech/project/truelink)

A Python library for resolving media URLs to direct download links from various file hosting services.

## Features

- **Asynchronous**: Built with `async/await` for efficient handling of multiple requests.
- **Easy to use**: Simple API with intuitive method names.
- **Extensible**: Support for multiple file hosting platforms.
- **Caching**: Built-in caching for faster resolution of repeated requests.
- **Error handling**: Robust error handling for various edge cases.
- **URL validation**: Built-in URL validation before processing.
- **Type-hinted**: Fully type-hinted codebase for better readability and maintainability.

## Installation

```bash
pip install truelink
```

## Quick Start

```python
import asyncio
from truelink import TrueLinkResolver

async def main():
# Check if a URL is supported without creating an instance
if TrueLinkResolver.is_supported("https://buzzheavier.com/rnk4ut0lci9y"):
print("BuzzHeavier is supported!")

resolver = TrueLinkResolver()
url = "https://buzzheavier.com/rnk4ut0lci9y"

try:
result = await resolver.resolve(url)
print(type(result))
print(result)
except Exception as e:
print(f"Error processing {url}: {e}")

asyncio.run(main())
```

### Documentation

For more information, see the [documentation](https://5hojib.github.io/truelink/).

### Community

- [Contributing](docs/contributing.md)
- [Code of Conduct](CODE_OF_CONDUCT.md)
- [Changelog](docs/changelog.md)