Skip to content

avilash/TikTokAPI-Python

Repository files navigation

Unofficial TikTok API Wrapper in Python

This is an unofficial TikTok Api python wrapper. I have an App using this API, and thus will constantly keep updating this wrapper
This implementation is inspired by TikTokApi, but runs faster.

Table of Contents

Getting Started

To get started using this API, follow the instructions below.

Installing

Pip

pip install PyTikTokAPI

Install from source

git clone https://github.com/avilash/TikTokAPI-Python.git
python setup.py install

Quick Start Guide

Import

from TikTokAPI import TikTokAPI

Get your keys from Cookie. You can get them from the Applications tab in Chrome developer console.
By default it used hardcoded values which may not work after some time.
The keys to extract are s_v_web_id and tt_webid

cookie = {
  "s_v_web_id": "<your_key>",
  "tt_webid": "<your_key>"
}

Get the most trending Videos on TikTok

api = TikTokAPI(cookie=cookie)
retval = api.getTrending(count=5)

Get a user by name

api = TikTokAPI(cookie=cookie)
user_obj = api.getUserByName("fcbarcelona")

Get videos of a user

api = TikTokAPI(cookie=cookie)
user_videos = api.getVideosByUserName("fcbarcelona")

Get likes of a user

api = TikTokAPI(cookie=cookie)
user_videos = api.getLikesByUserName("fcbarcelona")

Detailed Documentation

This section contains details about the parameters of each function and what it returns

Methods

Tiktok Class

Inputs

  • language - Self explanatory
  • region - Self explanatory
  • cookie - The TikTok Cookie containing the parameter s_v_web_id. If not provided, the parameter will be generated.
__init__(self, language='en', region='IN', cookie=None)

Get Trending Videos

Inputs

  • count - Number of videos to fetch
getTrending(self, count=30)

Get User

Inputs

  • user_name - Username, eg - fcbarcelona
getUserByName(self, user_name)

Get Videos By Username

Inputs

  • user_name - Username, eg - fcbarcelona
  • count - Number of videos to fetch
getVideosByUserName(self, user_name, count=30)

Get Likes By Username

Inputs

  • user_name - Username, eg - fcbarcelona
  • count - Number of videos to fetch
getLikesByUserName(self, user_name, count=30)

Get Hashtag

Inputs

  • hashTag - HashTag, eg - #fcbarcelona
getHashTag(self, hashTag)

Get Videos By Hashtag

Inputs

  • hashTag - HashTag, eg - #fcbarcelona
  • count - Number of videos to fetch
getVideosByHashTag(self, hashTag, count=30)

Get Music

Inputs

  • music_id - Music Id, eg - 6704854531001289474
getMusic(self, music_id)

Get Videos By Music

Inputs

  • music_id - Music Id, eg - 6704854531001289474
  • count - Number of videos to fetch
getVideosByMusic(self, music_id, count=30)

Get Video By Id

Inputs

  • video_id - Video Id, eg - 6843481669886954757
getVideoById(self, video_id)

Download Video

Inputs

  • video_id - Video Id, eg - 6843481669886954757
  • save_path - Path where the downloaded video should be saved
downloadVideoById(self, video_id, save_path)

Download Video No Watermark

Inputs

  • video_id - Video Id, eg - 6843481669886954757
  • save_path - Path where the downloaded video should be saved
downloadVideoByIdNoWatermark(self, video_id, save_path)

Built With

Authors

License

This project is licensed under the MIT License - see the LICENSE file for details

Run on Repl.it