innertubei
Fast, async-first Python library for YouTube's internal API (Innertube)
Installation
Using uv (recommended)
uv add innertubei
Using pip
pip install innertubei
Quick Start
import asyncio
from innertubei import Search, Video, Playlist, Transcript, Suggestions
async def main():
# Search videos, channels, playlists
search = Search('NoCopyrightSounds', limit=5)
results = await search.next()
# Get video details + formats
video = await Video.get('E07s5ZYygMg')
# Get playlist info + videos
playlist = await Playlist.get('PLRBp0Fe2GpgmsW46rJyudVFlY6IYjFBIK')
# Get video transcript
transcript = await Transcript.get('https://www.youtube.com/watch?v=E07s5ZYygMg')
# Get search suggestions
suggestions = await Suggestions.get('python tutorial')
asyncio.run(main())
For detailed examples, see example.py.
Development
Using uv (recommended)
# Clone and setup
git clone https://github.com/ohmyarthur/innertubei
cd innertubei
uv sync
# Run examples
uv run example.py
# Run tests
uv run uv run python -m pytest
Using traditional tools
pip install -e .
python example.py
License
MIT License. See LICENSE for details.
Credits
- Based on: py-yt-search by AshokShau - the original foundation
- Maintained by: ohmyarthur
- Inspiration: youtube-search-python by Alex Mercer
Metadata
Release files for innertubei 0.5.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| innertubei-0.5.2.tar.gz | 85.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| innertubei-0.5.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 126.9 kB
Release files / innertubei-0.5.2.tar.gz
| Download URL | innertubei-0.5.2.tar.gz |
|---|---|
| Size | 85.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
824b0d58d950bddf07ba8de9d66eef9658fa08e320ab6d1d80eed0152f293584
|
|
BLAKE2b-256 checksum How to use checksums |
6df7384843e1140c19460d3a1a12abec9709a27630b53196dca920c05430af9c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 9, 2025.
Transparency logRelease files / innertubei-0.5.2-py3-none-any.whl
| Download URL | innertubei-0.5.2-py3-none-any.whl |
|---|---|
| Size | 41.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e8e882f1ca428cf0a69f3ff82e1a3cac120909f2707760f7a5cd8d2b3f8c2e14
|
|
BLAKE2b-256 checksum How to use checksums |
201447d826b29ca8020d38066e7d4e88cc70be867f7f6d75637a9cbcd6929a12
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Dec 9, 2025.
Transparency log