PyThumb
Simple command line utility and API for downloading YouTube thumbnails.
Supports JPEG and WebP formats in all sizes.
Previews (animated thumbnails) are not supported due to the lack of direct URL or API access.
Requires Python 3.6+
Table of contents
Installation
Install via pip:
$ pip install pythumb
Or get binaries from the latest release.
From source
Use python
instead of python3
on Windows
Download source code from the latest release, extract and cd
into it.
(Optional) Create a virtual environment to manage packages easier.
Update pip and setuptools:
$ python3 -m pip install -U pip setuptools
Install this package:
$ python3 -m pip install .
Optionally you can build a standalone executable.
Prerequisites:
On Linux install python3-dev:
$ sudo apt install python3-dev
Install PyInstaller:
$ python3 -m pip install pyinstaller
Run the build script for your OS:
$ chmod +x ./scripts/build.sh
$ ./scripts/build.sh <win / linux>
You can find the executable in ./pyi-dist/
.
Usage
CLI
$ pythumb [options] <input>
To save a thumbnail to the current directory, simply pass the video URL or 11-character ID (recommended quoted):
$ pythumb "https://youtu.be/aqz-KE-bpKQ"
$ pythumb "aqz-KE-bpKQ"
Use --help
for more details.
API
Example
from pythumb import Thumbnail
t = Thumbnail('https://youtu.be/aqz-KE-bpKQ')
t.fetch()
t.save('.')
Thumbnail sizes
Name | Size |
---|
maxresdefault | 1280x720 |
sddefault | 640x480 |
hqdefault | 480x360 |
mqdefault | 320x180 |
default | 120x90 |
Auto-generated previews (start, middle and end of the video)
Name | Size |
---|
maxres1 | 1280x720 |
maxres2 | 1280x720 |
maxres3 | 1280x720 |
sd1 | 640x480 |
sd2 | 640x480 |
sd3 | 640x480 |
hq1 | 480x360 |
hq2 | 480x360 |
hq3 | 480x360 |
mq1 | 320x180 |
mq2 | 320x180 |
mq3 | 320x180 |
1 | 120x90 |
2 | 120x90 |
3 | 120x90 |
License
MIT license. See LICENSE for more information.