Giter VIP home page Giter VIP logo

ha6bots / tiktok-compilation-video-generator Goto Github PK

View Code? Open in Web Editor NEW
684.0 31.0 117.0 123 KB

A system of bots that collects clips automatically via custom made filters, lets you easily browse these clips, and puts them together into a compilation video ready to be uploaded straight to any social media platform. Full VPS support is provided, along with an accounts system so multiple users can use the bot at once. This bot is split up into three separate programs. The server. The client. The video generator. These programs perform different functions that when combined creates a very powerful system for auto generating compilation videos.

Home Page: https://www.youtube.com/watch?v=Ua-NbCDuYrE

License: MIT License

Python 100.00%
video-generation tiktok tiktok-scraper tiktok-api tiktok-downloader automatic video-processing videoeditor

tiktok-compilation-video-generator's Introduction

Contributors Forks Stargazers Issues MIT License


Logo

TikTok Compilation Video Generator

A system of bots that collects clips automatically via custom made filters, lets you easily browse these clips, and puts them together into a compilation video ready to be uploaded straight to any social media platform
Explore the docs »

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. License
  6. File System and Explanation
  7. Config Files and Explanation

About The Project

A system of bots that collects clips automatically via custom made filters, lets you easily browse these clips, and puts them together into a compilation video ready to be uploaded straight to any social media platform. Full VPS support is provided, along with an accounts system so multiple users can use the bot at once. This bot is split up into three separate programs. The server. The client. The video generator. These programs perform different functions that when combined creates a very powerful system for auto generating compilation videos.

TikTok compilation videos are a new phenomena that are quickly taking over the internet. They wrack up a lot of views and can quickly grow a channels follower base. There’s quite literally an endless supply of TikTok videos to choose from so the potential for growing channels is limitless. However there are several challenges involved in creating compilation videos. This bot (or series of programs) addresses many of these issues.

Full VPS Support and Account System

Since the bot is split up into three different programs, communications between the programs uses a combination HTTP and FTP servers to move information from one program to the other. The FTP servers are used to move mp4 files around while the HTTP servers are for general information and usually are in the form of json. FTP requires authorisation for each client and therefore this provides the basis of the account system. You can add or remove users and set there password in the server program. This username and password combination is required in the video editor program. Therefore this works perfectly for a multi man operation as allows for multiple people to use the bot at once.

What this bot does

Passively downloads and stores clips from TikTok for any user created filter. The clips are automatically kept track of in a clip bin database.

Provides a video editor interface connected directly to the clip bin database, allowing you to easily go through the clips. The interface is somewhat similar to that of tinder, where you can keep/skip a video clip.

A video generator that compiles the clips from the video editor, generating a mp4 video where that you can upload to any platform.

Bot Showcase Video

There are three separate programs that make up the TikTok bot.

Built With

This section should list any major frameworks used in development.

Getting Started

This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.

Prerequisites

This is an example of how to list things you need to use the software and how to install them.

Installation

  1. Install Modules
     pip install -r requirements.txt
  2. Get TikTok Cookies
    • Go to tiktok
    • Login to you account
    • Go to your profile
    • Open Developer Tools (cltr+shift+i)
    • In Developer console go to apllication
    • Find cookies Folder .
    • In cookies folder find 's_v_web_id' and 'sid_ucp_v1'
  3. Edit config file in Tiktok server
    • Add value of 's_v_web_id' and 'sid_ucp_v1' from cookie.
    • Edit database details.
  4. Check and edit config file in Tiktok Client and TikTok Video Generator

Usage

  1. Start mysql database.

  2. Go to Tiktok Server and start server.

    py main.py
    • Add filter , make it live.
    • search and download Clips
  3. Go to Tiktok Client and start.

    py main.py

    *Edit clips *Change duration, Intro, Outro and Interval.

  4. Go to Tiktok Video Generator and start.

    py main.py

    *Select and Render Final Video file .

Roadmap

See the open issues for a list of proposed features (and known issues).

License

Distributed under the MIT License. See LICENSE for more information.

FIle System

Server Program

Function:

• Automatically downloads clips from TikTok for any categories that you select.

• Can manage accounts for the client logins

Automatic Downloader Notes

The automatic downloader side of the server is designed in a way to get around the TikTok limitations for getting the highlight clips.

It is split into two different processes:

Finding the clip and obtaining it’s URL

Downloading the clip via the URL

There are no restrictions on downloading the clips and this is simple to do once a URL is obtained. However finding the top clips in the first place is another story.

TikTok only gives you access to about 2000 clips for each request entered in the API call. This would not be a sufficient amount of clips if the find/download process is only initiated when the bot is used for video editing. Therefore it is recommended to run this process automatically to build up a large clip bin, preferably on a VPS. This is largely down to the usage of the bot - heavy usage will demand a large amount of clips, and therefore turning on the automated find/download process is recommended for this case.

  • main.py : start point

  • database.py : all the sql queries are written here

  • server.py : FTP and HTTP Servers are handled here.

  • settings.py : Data loaded in from config.ini

  • tiktok.py : Where the API calls are made to TikTok with the download/find methods.

  • autodownloader.py : A wrapper for the download/find process utilised in autodownloaderUI.py

  • autodownloaderUI.py : Where the UI is programmed

scriptwrapper.py : Various wrappers for the TikTok clips here. Formatting of the video occurs here in the “reformatPartialJson” method

Video Editor Program

This is the actual user interface used to browse the clips in the server clip bin. This is a fairly simple process, for any one clip you have the option to keep or remove it.

  • main.py : start point

  • client.py : Communications with the server http and ftp occur here

  • settings.py : Data loaded in from config.ini

  • scriptwrapper.py : Various wrappers for tiktok clips / entire videos are stored here

  • clientUI.py : Where the UI is programmed

Video Generator Program

This actually puts together the clips into a compilation video. It also generates a credits text file with all the usernames of the TikToks used in the video.

  • main.py : start point

  • server.py : FTP and HTTP Servers are handled here.

  • settings.py : Data loaded in from config.ini

  • scriptwrapper.py : Various wrappers for tiktok clips / entire videos are stored here

  • vidGen.py : Methods for video rendering here see “renderVideo”

  • vidgenUI.py : Where the UI is programmed

Config File Explanation

Additional settings that only take effect on start-up are stored in a config file for each program. Any changes made require a restart to the particular program.

Server Config

[server_details]

  • address = 127.0.0.1 <-- Server Address

  • http_port = 8000 <-- Server HTTP Port

  • ftp_port = 2121 <-- Server FTP Port

[video_generator_location]

  • address = 127.0.0.1 <-- Video Generator Address

  • http_port = 8001 <-- Video Generator HTTP Port

  • ftp_port = 2122 <-- Video Generator FTP Port

  • ftp_user = VidGen <-- Video Generator FTP Client name

  • ftp_password = password <-- Video Generator FTP Client password

[tiktok]

  • language = en <-- Clip language

  • s_v_web_id = value <-- Get from TikTok Cookies , Read Above.

  • tt_webid = value <-- Get from TikTok Cookies , Read Above.

[mysql_database]

  • databasehost = localhost <-- MySQL Server address

  • databaseuser = root <-- MySQL Server user

  • databasepassword = <-- MySQL Server user password

Video Editor Config

[server_location]

  • address = 127.0.0.1 <-- Server address

  • server_http_port = 8000 <-- Server HTTP port

  • server_ftp_port = 2121 <-- Server FTP port

[auto_login]

  • username = admin <-- User registered in server

  • password = password <-- User registered in server’s password

  • auto_login = true <-- Insert the above details into the login window on startup

[video_settings]

  • enforce_interval = True <-- Forces you to select a interval for your video

  • enforce_intro = True <-- Forces you to select a intro for your video

  • enforce_outro = True <-- Forces you to select a outro for your video

  • enforce_firstclip = True <-- Forces you to select a first clip for your video

Video Generator Config

[video_generator_details]

  • address = 127.0.0.1 <-- Video Generator Address

  • http_port = 8001 <-- Video Generator HTTP port

  • ftp_port = 2122 <-- Video Generator FTP port

  • ftp_user = VidGen <-- Video Generator FTP user

  • ftp_password = password <-- Video Generator FTP user’s password

[server_location]

  • address = 127.0.0.1 <-- Server address

  • http_port = 8000 <-- Server HTTP port

  • ftp_port = 2121 <-- Server FTP port

[rendering]

  • fps = 30 <-- FPS to render video at if useMinimumFps or useMaximumFps are both true

  • useMinimumFps = True <-- Sets all the individual clips FPS to the lowest FPS of the clips (recommended)

  • useMaximumFps = False <-- Sets all the individual clips FPS to the highest FPS of the clips

  • backupVideos = True <-- Will automatically backup each video send to the video generator. These can be rerendered or deleted via the UI

tiktok-compilation-video-generator's People

Contributors

adh36 avatar benjamin-adler avatar exosylver avatar ha6bots avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tiktok-compilation-video-generator's Issues

API broken, changed cookie parameter

Hello, nice project but doesn't work anymore as far as i can tell at least.

As discovered by @Exosylver in avilash/TikTokAPI-Python#65 TikTok doesn't use the tt_webid parameter anymore. Therefore just able to get 5 setup instruction videos from TikTok itself using the default hardcoded cookie.

Any chance you could fix this?
Tried myself but couldn't get it working as i'm not great in Python.

Error

Hey I get this Error when I try to use the Client

`Downloading Video
.mp4
Exception in thread Thread-5:
Traceback (most recent call last):
File "C:\Users\Home\AppData\Local\Programs\Python\Python38\lib\threading.py", line 932, in _bootstrap_inner
self.run()
File "C:\Users\Home\AppData\Local\Programs\Python\Python38\lib\threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "C:\Users\Home\Desktop\TikTok-Compilation-Video-Generator-master\TikTok Client\client.py", line 200, in downloadFinishedVideo
ftp.retrbinary('RETR %s.mp4' % name, file.write, blocksize=settings.block_size)
File "C:\Users\Home\AppData\Local\Programs\Python\Python38\lib\ftplib.py", line 425, in retrbinary
with self.transfercmd(cmd, rest) as conn:
File "C:\Users\Home\AppData\Local\Programs\Python\Python38\lib\ftplib.py", line 382, in transfercmd
return self.ntransfercmd(cmd, rest)[0]
File "C:\Users\Home\AppData\Local\Programs\Python\Python38\lib\ftplib.py", line 348, in ntransfercmd
resp = self.sendcmd(cmd)
File "C:\Users\Home\AppData\Local\Programs\Python\Python38\lib\ftplib.py", line 275, in sendcmd
return self.getresp()
File "C:\Users\Home\AppData\Local\Programs\Python\Python38\lib\ftplib.py", line 248, in getresp
raise error_perm(resp)
ftplib.error_perm: 550 No such file or directory.

`

can you help me?

thanks in advance, kid regards

FTP error

Upon clicking Download Video in Client main menu, says that no such file or directory.
Not sure what file/directory is missing.

Found config in location D:\A\TikTok Client\config.ini
Found config in location D:\A\TikTok Client\config.ini
Downloading Video
.mp4
Exception in thread Thread-3:
Traceback (most recent call last):
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.2288.0_x64__qbz5n2kfra8p0\lib\threading.py", line 973, in _bootstrap_inner
    self.run()
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.2288.0_x64__qbz5n2kfra8p0\lib\threading.py", line 910, in run
    self._target(*self._args, **self._kwargs)
  File "D:\A\TikTok Client\client.py", line 200, in downloadFinishedVideo
    ftp.retrbinary('RETR %s.mp4' % name, file.write, blocksize=settings.block_size)
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.2288.0_x64__qbz5n2kfra8p0\lib\ftplib.py", line 436, in retrbinary
    with self.transfercmd(cmd, rest) as conn:
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.2288.0_x64__qbz5n2kfra8p0\lib\ftplib.py", line 393, in transfercmd
    return self.ntransfercmd(cmd, rest)[0]
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.2288.0_x64__qbz5n2kfra8p0\lib\ftplib.py", line 359, in ntransfercmd
    resp = self.sendcmd(cmd)
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.2288.0_x64__qbz5n2kfra8p0\lib\ftplib.py", line 281, in sendcmd
    return self.getresp()
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.2288.0_x64__qbz5n2kfra8p0\lib\ftplib.py", line 254, in getresp
    raise error_perm(resp)
ftplib.error_perm: 550 No such file or directory.

Traceback (most recent call last):

Traceback (most recent call last):
File "D:\TikTok-Compilation-Video-Generator-master\TikTok Server\tiktok.py", line 150, in getAllClips
new_ids.append(attemptAddScripts(results, "Hashtag"))
File "D:\TikTok-Compilation-Video-Generator-master\TikTok Server\tiktok.py", line 60, in attemptAddScripts
videoURL = tiktok["itemInfos"]["video"]["urls"][0]
KeyError: 'itemInfos'
'itemInfos'
exception occured downloading. waiting and retrying

Its happening a lot

Originally posted by @innovadorx in #3 (comment)

ERROR when launch tiktok client main.py

Found config in location C:\Users\AEK INFO\Downloads\TikTok-Compilation-Video-Generator-master\TikTok-Compilation-Video-Generator-master\TikTok Client\config.ini
Found config in location C:\Users\AEK INFO\Downloads\TikTok-Compilation-Video-Generator-master\TikTok-Compilation-Video-Generator-master\TikTok Client\config.ini
<class 'requests.exceptions.ConnectionError'> ('Connection aborted.', BadStatusLine('J\x00\x00\x00\n')) <traceback object at 0x000002CE84655B48>
Traceback (most recent call last):
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\site-packages\urllib3\connectionpool.py", line 706, in urlopen
chunked=chunked,
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\site-packages\urllib3\connectionpool.py", line 445, in _make_request
six.raise_from(e, None)
File "", line 3, in raise_from
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\site-packages\urllib3\connectionpool.py", line 440, in _make_request
httplib_response = conn.getresponse()
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\http\client.py", line 1369, in getresponse
response.begin()
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\http\client.py", line 310, in begin
version, status, reason = self._read_status()
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\http\client.py", line 292, in _read_status
raise BadStatusLine(line)
http.client.BadStatusLine: J

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\site-packages\requests\adapters.py", line 449, in send
timeout=timeout
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\site-packages\urllib3\connectionpool.py", line 756, in urlopen
method, url, error=e, _pool=self, _stacktrace=sys.exc_info()[2]
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\site-packages\urllib3\util\retry.py", line 532, in increment
raise six.reraise(type(error), error, _stacktrace)
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\site-packages\urllib3\packages\six.py", line 734, in reraise
raise value.with_traceback(tb)
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\site-packages\urllib3\connectionpool.py", line 706, in urlopen
chunked=chunked,
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\site-packages\urllib3\connectionpool.py", line 445, in _make_request
six.raise_from(e, None)
File "", line 3, in raise_from
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\site-packages\urllib3\connectionpool.py", line 440, in _make_request
httplib_response = conn.getresponse()
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\http\client.py", line 1369, in getresponse
response.begin()
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\http\client.py", line 310, in begin
version, status, reason = self._read_status()
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\http\client.py", line 292, in _read_status
raise BadStatusLine(line)
urllib3.exceptions.ProtocolError: ('Connection aborted.', BadStatusLine('J\x00\x00\x00\n'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "main.py", line 71, in
client.requestGames()
File "C:\Users\AEK INFO\Downloads\TikTok-Compilation-Video-Generator-master\TikTok-Compilation-Video-Generator-master\TikTok Client\client.py", line 19, in requestGames
responsegames =requests.get(f'http://{httpaddress}/getgames')
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\site-packages\requests\api.py", line 76, in get
return request('get', url, params=params, **kwargs)
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\site-packages\requests\api.py", line 61, in request
return session.request(method=method, url=url, **kwargs)
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\site-packages\requests\sessions.py", line 542, in request
resp = self.send(prep, **send_kwargs)
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\site-packages\requests\sessions.py", line 655, in send
r = adapter.send(request, **kwargs)
File "C:\Users\AEK INFO\AppData\Local\Programs\Python\Python37\lib\site-packages\requests\adapters.py", line 498, in send
raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', BadStatusLine('J\x00\x00\x00\n'))

TIK TOK API

Hello, i tried the new update and i get this message:

Traceback (most recent call last):
File "C:\Python38-32\lib\configparser.py", line 789, in get
value = d[option]
File "C:\Python38-32\lib\collections_init_.py", line 898, in getitem
return self.missing(key) # support subclasses that define missing
File "C:\Python38-32\lib\collections_init_.py", line 890, in missing
raise KeyError(key)
KeyError: 's_v_web_id'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "D:\tik tok bot\TikTok Server\main.py", line 4, in
import server
File "D:\tik tok bot\TikTok Server\server.py", line 31, in
settings.generateConfigFile()
File "D:\tik tok bot\TikTok Server\settings.py", line 75, in generateConfigFile
loadValues()
File "D:\tik tok bot\TikTok Server\settings.py", line 91, in loadValues
s_v_web_id = config.get('tiktok', 's_v_web_id')
File "C:\Python38-32\lib\configparser.py", line 792, in get
raise NoOptionError(option, section)
configparser.NoOptionError: No option 's_v_web_id' in section: 'tiktok'

Watermark

Possible to download videos without watermark?

"QObject::moveToThread" error

"QObject::moveToThread: Current thread (0xc096a0) is not the object's thread (0x1201d90).
Cannot move to target thread (0xc096a0)

qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/usr/local/lib/python3.8/dist-packages/cv2/qt/plugins" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: xcb, eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, webgl.

Aborted"

I have this error when I tried to run "Client"
The "Server" is started but when I go to the "Client" I have this error.

Add requirements.txt

Hey,

First of all thank you for this project - super useful. Second, it might be useful to do a pip freeze and store all the dependencies in a requirements.txt or something similar.

Thanks!

make it deployable on heroku

Hi Ha6Bots ,
please make it deployable on heroku free dyno for work autopilot & fully free. also heroku have wide range of buildpacks like imagemagick , chrome headless , ffmpeg ,
.. & using set workers in Procfile , u can autorun important cmds after awake dyno from daily sleep.
waiting for your changes commits :)
finest regards
goodbye

I just keep getting this same error code

[WinError 14001] The application has failed to start because its side-by-side configuration is incorrect. Please see the application event log or use the command-line sxstrace.exe tool for more detail exception occured downloading. waiting and retrying Please help me fix

Not working for me

Traceback (most recent call last):
File "D:\TikTok-Compilation-Video-Generator-master\TikTok Server\tiktok.py", line 137, in getAllClips
api = TikTokApi("browsermob-proxy/bin/browsermob-proxy")
TypeError: init() takes 1 positional argument but 2 were given
init() takes 1 positional argument but 2 were given
exception occured downloading. waiting and retrying

I think TikTokApi updated something, but the function TikTokApi() wont take 2 arguments anymore
Wont run for me

Not able to scrape

Hello
I think this is not working well, its not able to scrape by Author/Hashtag
I dont know how to code but i will donate to thank the creator of this fantastic open source bot

wont open

idk why it wont open python for a split second opens the closes

BUG - Download 403 Forbidden

Fix:
tiktok.py
add before line 216
this

opener = urllib.request.build_opener()
opener.addheaders = [('User-agent', 'okhttp'),('referer','https://www.tiktok.com/')]
urllib.request.install_opener(opener)

so the result is:

        try:
            opener = urllib.request.build_opener()
            opener.addheaders = [('User-agent', 'okhttp'),('referer','https://www.tiktok.com/')]
            urllib.request.install_opener(opener)
            urllib.request.urlretrieve(clip.url, f"{settings.vid_filepath}/{clip.author_name}-{clip.id}.mp4")

            clip.mp4 = f"{clip.author_name}-{clip.id}"
            media_info = MediaInfo.parse(f"{settings.vid_filepath}/{clip.author_name}-{clip.id}.mp4")
            duration = media_info.tracks[0].duration
            clip.vid_duration = float(duration) / 1000
            database.updateStatusWithClip(clip.id, "DOWNLOADED", clip)

File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\config parser.py", line 788, in get

Im getting a error while staring main.py
Anyone got a idea?

This is the full output:

C:\Users\Administrator\Downloads\TikTok-Compilation-Video-Generator-master\TikTo
k Server>py main.py
Found config in location C:\Users\Administrator\Downloads\TikTok-Compilation-Vid
eo-Generator-master\TikTok Server\config.ini
Traceback (most recent call last):
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\config
parser.py", line 788, in get
value = d[option]
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\collec
tions_init_.py", line 914, in getitem
return self.missing(key) # support subclasses that define m
issing

File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\collec
tions_init_.py", line 906, in missing
raise KeyError(key)
KeyError: 's_v_web_id'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "main.py", line 4, in
import server
File "C:\Users\Administrator\Downloads\TikTok-Compilation-Video-Generator-mast
er\TikTok Server\server.py", line 31, in
settings.generateConfigFile()
File "C:\Users\Administrator\Downloads\TikTok-Compilation-Video-Generator-mast
er\TikTok Server\settings.py", line 75, in generateConfigFile
loadValues()
File "C:\Users\Administrator\Downloads\TikTok-Compilation-Video-Generator-mast
er\TikTok Server\settings.py", line 91, in loadValues
s_v_web_id = config.get('tiktok', 's_v_web_id')
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\config
parser.py", line 791, in get
raise NoOptionError(option, section)
configparser.NoOptionError: No option 's_v_web_id' in section: 'tiktok'

error ocurred parsing

I am geting this error when running the client

rror occurred parsing: {'statusCode': 0,
Found exactly the same ids in two consecutive searches. Terminating search process

Error downloading

I get this when I try to download some tiktoks :
Downloading Clip 1/10
float() argument must be a string or a number, not 'NoneType'
Error downloading clip
Downloading Clip 2/10
127.0.0.1 - - [20/Apr/2021 17:47:33] "GET /getrenderinfo HTTP/1.1" 200 -
float() argument must be a string or a number, not 'NoneType'
Error downloading clip
Downloading Clip 3/10
float() argument must be a string or a number, not 'NoneType'
Error downloading clip
Downloading Clip 4/10
float() argument must be a string or a number, not 'NoneType'
Error downloading clip
Downloading Clip 5/10
127.0.0.1 - - [20/Apr/2021 17:47:38] "GET /getrenderinfo HTTP/1.1" 200 -
float() argument must be a string or a number, not 'NoneType'
Error downloading clip
Downloading Clip 6/10
float() argument must be a string or a number, not 'NoneType'
Error downloading clip
Downloading Clip 7/10
float() argument must be a string or a number, not 'NoneType'
Error downloading clip
Downloading Clip 8/10
'itemInfo'
Error downloading clip
Downloading Clip 9/10
float() argument must be a string or a number, not 'NoneType'
Error downloading clip
Downloading Clip 10/10
float() argument must be a string or a number, not 'NoneType'
Error downloading clip

TikTok Server

When I try and start finding tiktok videos, I get this error:
HTTPSConnectionPool(host='storage.googleapis.com', port=443): Max retries exceeded with url: /chromium-browser-snapshots/Mac/588429/chrome-mac.zip (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1123)')))
exception occured downloading. waiting and retrying
Terminated: 15
Can anyone help? @HA6Bots

is the bot off?

Hi,
I just check the bot for use it,
surprise, i had a lot of error, first the server said only one tiktok api is used :/
but it's not the problem, i have a problem on the video generator, at 95% it sais ‘charmap’ codec can’t encode character' and i try but i don't resolv it, maybe someone can help me? Thanks you

Does this still work?

I tried to install this bot firstly, I cannot see tt_webid cookie from the browser. Secondly, when running the bot, it’s getting many Python library errors.
I think it's out of date?

outdated

is this no longer receiving updates?

I keep getting this error code

- - [16/Oct/2021 23:40:05] "GET /getrenderinfo HTTP/1.1" 200 -

And when I press Start Finding I get this message

[WinError 14001] The application has failed to start because its side-by-side configuration is incorrect. Please see the application event log or use the command-line sxstrace.exe tool for more detail exception occured downloading. waiting and retrying

Editor UI gets clipped off

First of all, thank you for this super cool project!

Im running into an issue with the video editor. As you can see below, the editor seems to work except it is being cutoff, and even if I try to full screen, I can only see a bit more, but not enough to see all the edit controls. I'm using a Mac.

Screen Shot 2021-06-13 at 9 04 22 PM

Captcha

I followed the instructions very carefully and I'm not able to log in.

I believe this may be a result of the captcha currently being used on the site. Is this even accurate? If so, is there a solution that can be implemented?

Error when downloading clips (client)

Whenever i try to start editing and then click on 'download clips' this error pops up on the command line:

Exception in thread Thread-3:
Traceback (most recent call last):
  File "C:\Python38\lib\threading.py", line 932, in _bootstrap_inner
    self.run()
  File "C:\Python38\lib\threading.py", line 870, in run
    self._target(*self._args, **self._kwargs)
  File "C:\Users\Ahmed\Desktop\TikTok-Compilation-Video-Generator\TikTok Client\client.py", line 44, in requestClips
    ftp.login(settings.FTP_USER, settings.FTP_PASSWORD)
  File "C:\Python38\lib\ftplib.py", line 403, in login
    resp = self.sendcmd('PASS ' + passwd)
  File "C:\Python38\lib\ftplib.py", line 275, in sendcmd
    return self.getresp()
  File "C:\Python38\lib\ftplib.py", line 248, in getresp
    raise error_perm(resp)
ftplib.error_perm: 530 Authentication failed.

running on windows 10

docker / docker compose

Hi guys,

Hope you are all well !

I was wondering if it would be possible to dockerize the front and back for a quick boostrap of the services ?

Cheers,
X

Nothing is working...

This seems to have been broken.

After setting up a filter and clicking on "make filter live", then on "start finding" - it just doesn't find anything.
I've went through the set up and config.ini, put my own s_v_web_id and tt_webid, but it basically doesn't work..

Where is video

The video would help me out but it's not availble anymore on yt can someone send it pls

Editor does not display clip.

No Error Logs or Traceback
Windows 10.

The Editor does not display clip while editing. It shows the name of the clip at the top but does not render the clip at all. Nothing else appears to not work

Error Downloading Clips

In TikTokServer, when I try to dl (clicking on Start Downloading), there are some errors on the terminal.
I added some print to debug the thing

Downloading...
Downloading Clip 1/9
VideoFiles Zach King6932104074846375173
<pymediainfo.MediaInfo object at 0x0000017D3FA53940>
[<Track track_id='None', track_type='General'>]
<Track track_id='None', track_type='General'>
None
float() argument must be a string or a number, not 'NoneType'
Error downloading clip
Downloading Clip 2/9
VideoFiles user5066131102056930292632715382021
Exception in callback _ProactorBasePipeTransport._call_connection_lost(None)
handle: <Handle _ProactorBasePipeTransport._call_connection_lost(None)>
Traceback (most recent call last):
  File "C:\Python38\lib\asyncio\events.py", line 81, in _run
    self._context.run(self._callback, *self._args)
  File "C:\Python38\lib\asyncio\proactor_events.py", line 162, in _call_connection_lost
    self._sock.shutdown(socket.SHUT_RDWR)
ConnectionResetError: [WinError 10054] Une connexion existante a dû être fermée par l’hôte distant
<pymediainfo.MediaInfo object at 0x0000017D3FAF6640>
[<Track track_id='None', track_type='General'>]
<Track track_id='None', track_type='General'>
None
float() argument must be a string or a number, not 'NoneType'
Error downloading clip

TikTokServer/tiktok.py

try:
            api.downloadVideoById(clip.id, f"{settings.vid_filepath}/{clip.author_name}-{clip.id}.mp4")
            media_info = MediaInfo.parse(f"{settings.vid_filepath}/{clip.author_name}-{clip.id}.mp4")
            print(media_info)
            print(media_info.tracks)
            print(media_info.tracks[0])
            duration = media_info.tracks[0].duration
            print(duration)
            clip.vid_duration = float(duration) / 1000
            database.updateStatusWithClip(clip.id, "DOWNLOADED", clip)
except Exception as e:
            print(e)
            print("Error downloading clip")
            database.updateStatusWithClip(clip.id, "BAD", clip)

I think the error is from the MediaInfo.
MediaInfo.parse does not read correctly the file.

Also, when I open Clip Bin, I can't play the videos. I don't know why ? Format mp4, ~380ko. I also try to read the informations inside the videos with the MediaInfo software but impossible to read any information.

New Cookies?

Hello, I am pretty new to this stuff and haven't found the answer to my question anywhere else here-- does anyone know what the replacement cookies are since s_v_web_id and tt_webid no longer exist? Or am I doing something wrong for neither of those cookies to appear?

Thanks in advance!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.