Skip to main content

crawlora-youtube — YouTube API client for Python

Python client for Crawlora's hosted YouTube API. It exposes 14 API endpoints covering search, channels, videos, playlists, comments, captions, and transcripts. Requests go to Crawlora; the package does not run a browser or scrape YouTube locally. A Crawlora account and CRAWLORA_API_KEY are required, and API use is billed under your Crawlora account. Crawlora is independent from and not endorsed by YouTube or its owners.

Install

python -m pip install crawlora-youtube

Get an API key

Create an account at crawlora.net, then open the Crawlora console for API-key setup. Set your key in the shell before running the client:

export CRAWLORA_API_KEY="your-crawlora-api-key"

Use

Save this example as example.py, then run python example.py after installing the package and setting your API key.

import os

from crawlora_youtube import YouTubeClient

api_key = os.environ.get("CRAWLORA_API_KEY")
if not api_key:
    raise RuntimeError("Set CRAWLORA_API_KEY before running this example.")

with YouTubeClient(api_key=api_key) as client:
    result_1 = client.search(q='science explainers', type='video')
    print(result_1)
    result_2 = client.video(id='dQw4w9WgXcQ')
    print(result_2)
    result_3 = client.transcript(id='dQw4w9WgXcQ', format='text')
    print(result_3)

The package also exports Client as an alias for YouTubeClient. Operation methods are available directly in snake_case and through the youtube group. The async package client is AsyncYouTubeClient; see the online endpoint and parameter reference and runnable example.

Async usage

The package also exports AsyncClient for asynchronous requests:

import asyncio
import os

from crawlora_youtube import AsyncClient

async def main():
    api_key = os.environ.get("CRAWLORA_API_KEY")
    if not api_key:
        raise RuntimeError("Set CRAWLORA_API_KEY before running this example.")
    async with AsyncClient(api_key=api_key) as client:
        result_1 = await client.transcript(id='dQw4w9WgXcQ', format='text')
        print(result_1)

asyncio.run(main())

See the runnable example for a complete usage example.

Supported YouTube API endpoints

This package exposes every route below through direct snake_case methods and the youtube group. See the endpoint and parameter reference for complete input details.

Method Endpoint API operation Description
GET /youtube/captions/{id} youtube-captions Retrieve auto-generated or human captions
GET /youtube/channel/{id}/playlists youtube-channel-playlists Retrieve the playlists tab for a YouTube channel
GET /youtube/channel/{id}/search youtube-channel-search Search within a YouTube channel
GET /youtube/channel/{id}/shorts youtube-channel-shorts Retrieve the shorts tab for a YouTube channel
GET /youtube/channel/{id}/videos youtube-channel-videos Retrieve the videos tab for a YouTube channel
GET /youtube/comments/{id} youtube-comments Retrieve video comments (top-level & replies)
GET /youtube/playlist/{id} youtube-playlist Retrieve playlist metadata and items
GET /youtube/profile/{id} youtube-profile Retrieve channel profile
GET /youtube/search youtube-search Search YouTube
GET /youtube/suggest youtube-suggest Suggest YouTube search queries
GET /youtube/tag/{tag} youtube-tag Retrieve YouTube videos by tag
GET /youtube/transcript/{id} youtube-transcript Retrieve transcript for a YouTube video
GET /youtube/transcript/{id}/languages youtube-transcript-languages List transcript languages for a YouTube video
GET /youtube/video/{id} youtube-video Retrieve video metadata & captions

Configuration

Pass your key through api_key or read CRAWLORA_API_KEY from the environment. Keep credentials out of source control and logs. Requests go to Crawlora's hosted API.

Metadata

Release files for crawlora-youtube 0.1.9

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

Source distribution (sdist)

Source distribution for crawlora-youtube 0.1.9
File Size Uploaded
crawlora_youtube-0.1.9.tar.gz 26.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for crawlora-youtube 0.1.9
File Interpreter ABI Platform
crawlora_youtube-0.1.9-py3-none-any.whl Python 3 none any Details

Total release size: 52.8 kB

Release files / crawlora_youtube-0.1.9.tar.gz

Download URL crawlora_youtube-0.1.9.tar.gz
Size 26.2 kB
Tags Source
SHA-256 checksum
How to use checksums
5cf805e4e3b54c09821dfd382cc50d05f40d8d8a204c9b27161c88e328f706d9
BLAKE2b-256 checksum
How to use checksums
a10626376da6e26d6e37e057352a9930bcada0522668a940c134b9a892aa846e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.15

Release files / crawlora_youtube-0.1.9-py3-none-any.whl

Download URL crawlora_youtube-0.1.9-py3-none-any.whl
Size 26.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9e06b885d3fef2472b02c7071a36c8c738e1c939557901ef5e40d1869bcd7842
BLAKE2b-256 checksum
How to use checksums
ec3d7a47dc980bd6e4457f15817d787f2a8e9ee9dc1c0d4fe8b1da5a5671815c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.15

Release history Release notifications | RSS feed

0.2.0

2 release files

This release

0.1.9 This release

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

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