A simple tiktok video downloader written in go
Go to file
Pijus Kamandulis 92006d864f TTDL-20 Wait for error/items beefore quiting 2020-04-08 23:26:50 +03:00
.github/workflows Added sonar-scaner 2020-04-04 21:09:41 +03:00
.sonar Added sonar-scaner 2020-04-04 21:09:41 +03:00
client Added support for `vm.tiktok.com` urls 2020-03-22 12:38:08 +02:00
models TTDL-7 Added flag; Code clean up 2020-03-22 02:10:24 +02:00
resources TTDL-5 Added better error handling 2020-02-25 20:12:01 +02:00
unitTestUtil Added more unit tests 2020-01-22 01:06:35 +02:00
utils TTDL-7 Added flag; Code clean up 2020-03-22 02:10:24 +02:00
workflows Added support for `vm.tiktok.com` urls 2020-03-22 12:38:08 +02:00
.gitignore Added sonar-scaner 2020-04-04 21:09:41 +03:00
LICENSE Added sonar-scaner 2020-04-04 21:09:41 +03:00
README.md TTDL-7 Added flag; Code clean up 2020-03-22 02:10:24 +02:00
main.go Improved status output 2020-02-08 02:52:26 +02:00
package-lock.json Update build script to minimize js 2020-01-20 21:22:14 +02:00
package.json Added sonar-scaner 2020-04-04 21:09:41 +03:00
scraper.js TTDL-20 Wait for error/items beefore quiting 2020-04-08 23:26:50 +03:00

README.md

TikTok-DL

Go Report Card GitHub Workflow Status

A simple tiktok video downloader written in go

Basic usage

Download the executable from https://github.com/pikami/tiktok-dl/releases
You can download all videos from user by running ./tiktok-dl [Options] TIKTOK_USERNAME
You can download single video by running ./tiktok-dl [Options] VIDEO_URL
You can download all videos by music by running ./tiktok-dl [Options] MUSIC_URL
You can download items listed in a text file by running ./tiktok-dl [OPTIONS] -batch-file path/to/items.txt

Build instructions

Clone this repository and run go build to build the executable.

Available options

  • -archive - Download only videos not listed in the archive file. Record the IDs of all downloaded videos in it.
  • -batch-file - File containing URLs/Usernames to download, one value per line. Lines starting with '#', are considered as comments and ignored.
  • -deadline - Sets the timout for scraper logic in seconds (used as a workaround for context deadline exceeded error) (default 1500)
  • -debug - enables debug mode
  • -json - Returns whole data, that was scraped from TikTok, in json
  • -limit - Sets the max count of video that will be downloaded (default infinity)
  • -metadata - Write video metadata to a .json file
  • -output some_directory - Output path (default "./downloads")
  • -quiet - Supress output

Acknowledgments

This software uses the chromedp for web scraping, it can be found here: https://github.com/chromedp/chromedp
For releases the JS code is minified by using terser toolkit, it can be found here: https://github.com/terser/terser