# yt-channel-scraper
[![📦️Upload PyPi Package](https://github.com/priyanshu-panwar/yt-channel-scraper/actions/workflows/publish.yml/badge.svg)](https://github.com/priyanshu-panwar/yt-channel-scraper/actions/workflows/publish.yml) [![🧪Test](https://github.com/priyanshu-panwar/yt-channel-scraper/actions/workflows/test.yml/badge.svg)](https://github.com/priyanshu-panwar/yt-channel-scraper/actions/workflows/test.yml)
```
All in one Youtube Tool for Python.
```
Helps you fetch the following things of a youtube channel:
- channel_id
- videos (video_ids)
- video transcripts
- download videos
## channel_id
```
from yt_channel_scraper import YoutubeScraper
fy = YoutubeScraper("channel-link")
print(fy.get_channel_id())
```
## videos
```
from yt_channel_scraper import YoutubeScraper
fy = YoutubeScraper("channel-link")
print(fy.get_video_ids(limit=20)) # limit is number of latest videos you need
```
## video transcripts
```
from yt_channel_scraper import YoutubeScraper
fy = YoutubeScraper("channel-link")
v_ids = fy.get_video_ids(limit=20)
print(fy.get_video_transcript()) # fetch video transcripts of all videos
print(fy.get_video_transcript(video_id="video-id")) # fetch video transcript of single video
```
## download videos
```
from yt_channel_scraper import YoutubeDownloader
yd = YoutubeDownloader("video-link")
print(yd.get_download_streams()) # show the available streams to download with tags
yd.download_stream("tag") # give the tag from available streams whichever to download
yd.download_highest_resolution() # download highest resolution available
```
Raw data
{
"_id": null,
"home_page": "",
"name": "yt-channel-scraper",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "",
"author": "Priyanshu Panwar",
"author_email": "priyanshu009ch@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/bf/fc/88645920f3fd79152d1f4badedf73e556ac2f83bc2892c55e5683e5eadbf/yt-channel-scraper-0.1.1.tar.gz",
"platform": null,
"description": "# yt-channel-scraper\n[![\ud83d\udce6\ufe0fUpload PyPi Package](https://github.com/priyanshu-panwar/yt-channel-scraper/actions/workflows/publish.yml/badge.svg)](https://github.com/priyanshu-panwar/yt-channel-scraper/actions/workflows/publish.yml) [![\ud83e\uddeaTest](https://github.com/priyanshu-panwar/yt-channel-scraper/actions/workflows/test.yml/badge.svg)](https://github.com/priyanshu-panwar/yt-channel-scraper/actions/workflows/test.yml)\n\n```\nAll in one Youtube Tool for Python.\n```\n\nHelps you fetch the following things of a youtube channel:\n- channel_id\n- videos (video_ids)\n- video transcripts\n- download videos\n\n## channel_id\n```\nfrom yt_channel_scraper import YoutubeScraper\n\nfy = YoutubeScraper(\"channel-link\")\nprint(fy.get_channel_id())\n```\n\n## videos\n```\nfrom yt_channel_scraper import YoutubeScraper\n\nfy = YoutubeScraper(\"channel-link\")\nprint(fy.get_video_ids(limit=20)) # limit is number of latest videos you need\n```\n\n## video transcripts\n```\nfrom yt_channel_scraper import YoutubeScraper\n\nfy = YoutubeScraper(\"channel-link\")\nv_ids = fy.get_video_ids(limit=20)\nprint(fy.get_video_transcript()) # fetch video transcripts of all videos\nprint(fy.get_video_transcript(video_id=\"video-id\")) # fetch video transcript of single video\n```\n\n## download videos\n```\nfrom yt_channel_scraper import YoutubeDownloader\n\nyd = YoutubeDownloader(\"video-link\")\nprint(yd.get_download_streams()) # show the available streams to download with tags\nyd.download_stream(\"tag\") # give the tag from available streams whichever to download\nyd.download_highest_resolution() # download highest resolution available\n```\n",
"bugtrack_url": null,
"license": "",
"summary": "All in one Youtube Solution for python. Scrap, Fetch, Download anything from a Youtube Channel, Video.",
"version": "0.1.1",
"project_urls": {
"Source": "https://github.com/priyanshu-panwar/yt-channel-scraper"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "2ef363342564569a206839033f3450820f098fde54bf608f84ae414d226d3c2f",
"md5": "a1bc0d633425d4e5596c18a24161af4f",
"sha256": "0524dcc7572a61c6f9f88760fa1aa2ab030bcf234bfceba0fae1745e9f797569"
},
"downloads": -1,
"filename": "yt_channel_scraper-0.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "a1bc0d633425d4e5596c18a24161af4f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 4099,
"upload_time": "2023-06-08T12:23:03",
"upload_time_iso_8601": "2023-06-08T12:23:03.012357Z",
"url": "https://files.pythonhosted.org/packages/2e/f3/63342564569a206839033f3450820f098fde54bf608f84ae414d226d3c2f/yt_channel_scraper-0.1.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "bffc88645920f3fd79152d1f4badedf73e556ac2f83bc2892c55e5683e5eadbf",
"md5": "6a507edf8001c1c5b6dc38039bc36a88",
"sha256": "573a4026b395b30070c618aca1e2ec7c123db5e173c613bb1f9aa7181b6cd525"
},
"downloads": -1,
"filename": "yt-channel-scraper-0.1.1.tar.gz",
"has_sig": false,
"md5_digest": "6a507edf8001c1c5b6dc38039bc36a88",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 3656,
"upload_time": "2023-06-08T12:23:04",
"upload_time_iso_8601": "2023-06-08T12:23:04.490698Z",
"url": "https://files.pythonhosted.org/packages/bf/fc/88645920f3fd79152d1f4badedf73e556ac2f83bc2892c55e5683e5eadbf/yt-channel-scraper-0.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-06-08 12:23:04",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "priyanshu-panwar",
"github_project": "yt-channel-scraper",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "beautifulsoup4",
"specs": [
[
"==",
"4.12.2"
]
]
},
{
"name": "bleach",
"specs": [
[
"==",
"6.0.0"
]
]
},
{
"name": "certifi",
"specs": [
[
"==",
"2023.5.7"
]
]
},
{
"name": "charset-normalizer",
"specs": [
[
"==",
"3.1.0"
]
]
},
{
"name": "colorama",
"specs": [
[
"==",
"0.4.6"
]
]
},
{
"name": "docutils",
"specs": [
[
"==",
"0.20.1"
]
]
},
{
"name": "flake8",
"specs": [
[
"==",
"6.0.0"
]
]
},
{
"name": "idna",
"specs": [
[
"==",
"3.4"
]
]
},
{
"name": "importlib-metadata",
"specs": [
[
"==",
"6.6.0"
]
]
},
{
"name": "iniconfig",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "jaraco.classes",
"specs": [
[
"==",
"3.2.3"
]
]
},
{
"name": "keyring",
"specs": [
[
"==",
"23.13.1"
]
]
},
{
"name": "markdown-it-py",
"specs": [
[
"==",
"2.2.0"
]
]
},
{
"name": "mccabe",
"specs": [
[
"==",
"0.7.0"
]
]
},
{
"name": "mdurl",
"specs": [
[
"==",
"0.1.2"
]
]
},
{
"name": "more-itertools",
"specs": [
[
"==",
"9.1.0"
]
]
},
{
"name": "packaging",
"specs": [
[
"==",
"23.1"
]
]
},
{
"name": "pkginfo",
"specs": [
[
"==",
"1.9.6"
]
]
},
{
"name": "pluggy",
"specs": [
[
"==",
"1.0.0"
]
]
},
{
"name": "pycodestyle",
"specs": [
[
"==",
"2.10.0"
]
]
},
{
"name": "pyflakes",
"specs": [
[
"==",
"3.0.1"
]
]
},
{
"name": "Pygments",
"specs": [
[
"==",
"2.15.1"
]
]
},
{
"name": "pytest",
"specs": [
[
"==",
"7.3.1"
]
]
},
{
"name": "pytube",
"specs": [
[
"==",
"15.0.0"
]
]
},
{
"name": "pywin32-ctypes",
"specs": [
[
"==",
"0.2.0"
]
]
},
{
"name": "readme-renderer",
"specs": [
[
"==",
"37.3"
]
]
},
{
"name": "requests",
"specs": [
[
"==",
"2.31.0"
]
]
},
{
"name": "requests-toolbelt",
"specs": [
[
"==",
"1.0.0"
]
]
},
{
"name": "rfc3986",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "rich",
"specs": [
[
"==",
"13.4.1"
]
]
},
{
"name": "scrapetube",
"specs": [
[
"==",
"2.3.1"
]
]
},
{
"name": "six",
"specs": [
[
"==",
"1.16.0"
]
]
},
{
"name": "soupsieve",
"specs": [
[
"==",
"2.4.1"
]
]
},
{
"name": "twine",
"specs": [
[
"==",
"4.0.2"
]
]
},
{
"name": "typing_extensions",
"specs": [
[
"==",
"4.6.3"
]
]
},
{
"name": "urllib3",
"specs": [
[
"==",
"2.0.3"
]
]
},
{
"name": "webencodings",
"specs": [
[
"==",
"0.5.1"
]
]
},
{
"name": "youtube-transcript-api",
"specs": [
[
"==",
"0.6.0"
]
]
},
{
"name": "zipp",
"specs": [
[
"==",
"3.15.0"
]
]
}
],
"lcname": "yt-channel-scraper"
}