youtube-comment-downloader
Simple script for downloading Youtube comments without using the Youtube API. The output is in line delimited JSON.
Installation
Preferably inside a python virtual environment install this package via:
pip install youtube-comment-downloader
Or directly from the GitHub repository:
pip install https://github.com/egbertbouman/youtube-comment-downloader/archive/master.zip
Usage as command-line interface
$ youtube-comment-downloader --help
usage: youtube-comment-downloader [--help] [--youtubeid YOUTUBEID] [--url URL] [--output OUTPUT]
[--format {jsonl,json,csv,scsv}] [--limit LIMIT] [--language LANGUAGE] [--sort SORT]
Download Youtube comments without using the Youtube API
options:
--help, -h Show this help message and exit
--youtubeid YOUTUBEID, -y YOUTUBEID ID of Youtube video for which to download the comments
--url URL, -u URL Youtube URL for which to download the comments
--output OUTPUT, -o OUTPUT Output filename (optional, defaults to video_id.ext)
--format {jsonl,json,csv,scsv}, -f {jsonl,json,csv,scsv}
Output format: jsonl, json, csv (comma), or scsv (semicolon).
--limit LIMIT, -l LIMIT Limit the number of comments
--language LANGUAGE, -a LANGUAGE Language for Youtube generated text (e.g. en)
--sort SORT, -s SORT Whether to download popular (0) or recent comments (1). Defaults to 1
For example (automatically saves to ScMzIvxBSi4.jsonl):
youtube-comment-downloader --url https://www.youtube.com/watch?v=ScMzIvxBSi4
or using a custom filename and/or format (e.g., CSV):
youtube-comment-downloader --youtubeid ScMzIvxBSi4 --output comments.csv --format csv
For Youtube IDs starting with - (dash) you will need to run the script with:
-y=idwithdash or --youtubeid=idwithdash
Usage as library
You can also use this script as a library. For instance, if you want to print out the 10 most popular comments for a particular Youtube video you can do the following:
from itertools import islice
from youtube_comment_downloader import *
downloader = YoutubeCommentDownloader()
comments = downloader.get_comments_from_url('https://www.youtube.com/watch?v=ScMzIvxBSi4', sort_by=SORT_BY_POPULAR)
for comment in islice(comments, 10):
print(comment)
Metadata
Release files for youtube-comment-downloader 0.1.83
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| youtube_comment_downloader-0.1.83.tar.gz | 9.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| youtube_comment_downloader-0.1.83-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 18.1 kB
Release files / youtube_comment_downloader-0.1.83.tar.gz
| Download URL | youtube_comment_downloader-0.1.83.tar.gz |
|---|---|
| Size | 9.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
44a71570ab15238de0e9ee489d71768042bdcbcdda630794a38f49b516e2f39a
|
|
BLAKE2b-256 checksum How to use checksums |
5d8e87ac4e58890a142c54d1439a494caabf9a69e878396fdce6ff4b755dd1e1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / youtube_comment_downloader-0.1.83-py3-none-any.whl
| Download URL | youtube_comment_downloader-0.1.83-py3-none-any.whl |
|---|---|
| Size | 9.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bd407bbd5af8bc39b9a2a59151e585c6f7350b57d7868a83f68ecd4d3754ca1c
|
|
BLAKE2b-256 checksum How to use checksums |
0c95fd582ca850b2c42c468b0d28809d6d6c5cfa8d552997dc15099b9a3c6c7e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|