TikTok scraper and download management
added: ignore manual HTML files
fixed: save path updates for each new User instance



You can also use your local clone with git send-email.


TikTok scraper and download management.

This software relies on a server to plug into the TikTok API and pull the required JSON data.

tiktok-dl is an easy way to download and keep track of the content of multiple TikTok accounts through the command line.


Clone this repository or download the latest tarball and extract. This repo uses poetry to make management easy.

cd tiktok-dl-<version>/
poetry install


By either selecting account names with the --users flag or recording them in the configuration file, running this program will pull any video that has yet to be saved locally. tiktok-dl leverages yt-dlp for the actual downloading.

With the default config (shown below), a working server at the given address, and implying there's only one video to download:

$ tiktok-dl.py -u liverpoolfc

liverpoolfc: 1 pending downloads...

Newly downloaded: 1
Total downloaded: 1
Errors: 0


The default configuration will save as ~/.config/tiktok_dl/config.toml. The options users, blacklist, and ytdlp_options.paths.home are required (the two former with at least empty lists), with the latter having the additional feature of expanding {user} with the user name of the account currently downloading.

Nearly all yt-dlp options are available and can be seen (hopefully correctly typed from the original source code dynamic dict) here.

server = ""
port = 1337
users = []
blacklist = []

format = "bestvideo+bestaudio/best"
socket_timeout = 2

home = "downloads/{user}"


To-be-included features can be seen through the current open issues.


Refer to the announcement mailing list for project updates and the devel mailing list for contributions and collaboration.

Issues should be directed to the project issue tracker.


This project is licensed under the GPLv3.