bashonly / yt-dlp-ttuser Goto Github PK
View Code? Open in Web Editor NEWA yt-dlp extractor plugin for downloading all videos posted by a TikTok user
License: The Unlicense
A yt-dlp extractor plugin for downloading all videos posted by a TikTok user
License: The Unlicense
I tried using --extractor-args "tiktok:web_fallback"
but got this error after 14 found videos:
WARNING: [tiktok:user+TTUser] Unable to find video in feed. Failed to extract from feed; falling back to web API response
ERROR: TikTokBaseIE._parse_aweme_video_web() missing 1 required positional argument: 'video_id'
Could you please add image support?
Example: https://www.tiktok.com/@emissionzenith/photo/7334350203929103621
WARNING: The program functionality for this site has been marked as broken, and will probably not work.
ERROR: [tiktok:user+TTUser] hugostunes: Unable to extract sigi state; please report this issue on https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using yt-dlp -U
Request for a comment. Sometimes randomly I get this on a users channel and it last for like several days. I tested it on other pc and I don't get the error so it is mostlikely a ip block. Whats the best way around this error. I have 5-10 delay for each video and 130s between each username. Will increasing these number prevent the random channel blocks? or is there no way around this? Just posting here becuase Idk were else to ask. What are your guys way around this? adding vpn timer? running 2pc's/virtual machines?
Same Problem as yt-dlp its failing to download videos. I think Error trying to parse the JSON data from the TikTok user video list page. It was working 2 days ago just fine on yt-dlp but it seems tiktok have updated there website recently and this plugin doesnt help solve it.
Complete Verbose Output
PS D:\yt-dlp-TTUser> .\yt-dlp --extractor-args "tiktok:sec_uid=7275274545622336513" -vU https://www.tiktok.com/@cblackyyy
[debug] Command-line config: ['--extractor-args', 'tiktok:sec_uid=7275274545622336513', '-vU', 'https://www.tiktok.com/@cblackyyy']
[debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version [email protected] [b634ba742] (win_exe)
[debug] Python 3.8.10 (CPython AMD64 64bit) - Windows-10-10.0.22000-SP0 (OpenSSL 1.1.1k 25 Mar 2021)
[debug] exe versions: ffmpeg 6.0-full_build-www.gyan.dev (setts), ffprobe 6.0-full_build-www.gyan.dev
[debug] Optional libraries: Cryptodome-3.19.0, brotli-1.1.0, certifi-2023.07.22, mutagen-1.47.0, sqlite3-3.35.5, websockets-11.0.3
[debug] Proxy map: {}
[debug] Loaded 1890 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Available version: [email protected], Current version: [email protected]
Current Build Hash: 13d6a04ef6678dc61cb6e2d42eb53e69486bd2f52b8e5d778db029ccd4c600b4
yt-dlp is up to date ([email protected])
WARNING: The program functionality for this site has been marked as broken, and will probably not work.
[tiktok:user] Extracting URL: https://www.tiktok.com/@cblackyyy
[tiktok:user] cblackyyy: Downloading webpage
[tiktok:user] cblackyyy: Downloading user video list page 1
WARNING: [tiktok:user] Expecting value in '': line 1 column 1 (char 0). Retrying... (attempt 1 of 4)
[tiktok:user] cblackyyy: Downloading user video list page 1
WARNING: [tiktok:user] Expecting value in '': line 1 column 1 (char 0). Retrying... (attempt 2 of 4)
[tiktok:user] cblackyyy: Downloading user video list page 1
WARNING: [tiktok:user] Expecting value in '': line 1 column 1 (char 0). Retrying... (attempt 3 of 4)
[tiktok:user] cblackyyy: Downloading user video list page 1
WARNING: [tiktok:user] Expecting value in '': line 1 column 1 (char 0). Retrying (1/3)...
[tiktok:user] cblackyyy: Downloading user video list page 1
WARNING: [tiktok:user] Expecting value in '': line 1 column 1 (char 0). Retrying... (attempt 1 of 4)
[tiktok:user] cblackyyy: Downloading user video list page 1
WARNING: [tiktok:user] Expecting value in '': line 1 column 1 (char 0). Retrying... (attempt 2 of 4)
[tiktok:user] cblackyyy: Downloading user video list page 1
WARNING: [tiktok:user] Expecting value in '': line 1 column 1 (char 0). Retrying... (attempt 3 of 4)
[tiktok:user] cblackyyy: Downloading user video list page 1
WARNING: [tiktok:user] Expecting value in '': line 1 column 1 (char 0). Retrying (2/3)...
[tiktok:user] cblackyyy: Downloading user video list page 1
WARNING: [tiktok:user] Expecting value in '': line 1 column 1 (char 0). Retrying... (attempt 1 of 4)
[tiktok:user] cblackyyy: Downloading user video list page 1
WARNING: [tiktok:user] Expecting value in '': line 1 column 1 (char 0). Retrying... (attempt 2 of 4)
[tiktok:user] cblackyyy: Downloading user video list page 1
WARNING: [tiktok:user] Expecting value in '': line 1 column 1 (char 0). Retrying... (attempt 3 of 4)
[tiktok:user] cblackyyy: Downloading user video list page 1
WARNING: [tiktok:user] Expecting value in '': line 1 column 1 (char 0). Retrying (3/3)...
[tiktok:user] cblackyyy: Downloading user video list page 1
WARNING: [tiktok:user] Expecting value in '': line 1 column 1 (char 0). Retrying... (attempt 1 of 4)
[tiktok:user] cblackyyy: Downloading user video list page 1
WARNING: [tiktok:user] Expecting value in '': line 1 column 1 (char 0). Retrying... (attempt 2 of 4)
[tiktok:user] cblackyyy: Downloading user video list page 1
WARNING: [tiktok:user] Expecting value in '': line 1 column 1 (char 0). Retrying... (attempt 3 of 4)
[tiktok:user] cblackyyy: Downloading user video list page 1
ERROR: [tiktok:user] cblackyyy: cblackyyy: Failed to parse JSON (caused by JSONDecodeError("Expecting value in '': line 1 column 1 (char 0)")); please report this issue on https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using yt-dlp -U
File "yt_dlp\extractor\common.py", line 715, in extract
File "yt_dlp\extractor\tiktok.py", line 806, in _real_extract
File "yt_dlp\utils\traversal.py", line 239, in traverse_obj
File "yt_dlp\utils\traversal.py", line 227, in _traverse_obj
File "yt_dlp\utils\traversal.py", line 215, in apply_path
File "yt_dlp\utils\traversal.py", line 173, in apply_key
File "yt_dlp\utils_utils.py", line 2195, in getitem
File "yt_dlp\extractor\tiktok.py", line 774, in _video_entries_api
File "yt_dlp\utils_utils.py", line 5114, in iter
File "yt_dlp\extractor\common.py", line 3760, in _error_or_warning
File "yt_dlp\utils_utils.py", line 5122, in report_retry
File "yt_dlp\extractor\tiktok.py", line 776, in _video_entries_api
File "yt_dlp\extractor\tiktok.py", line 132, in _call_api
File "yt_dlp\extractor\tiktok.py", line 125, in _call_api
File "yt_dlp\extractor\tiktok.py", line 62, in _call_api_impl
File "yt_dlp\extractor\common.py", line 1069, in download_content
File "yt_dlp\extractor\common.py", line 1039, in download_handle
File "yt_dlp\extractor\common.py", line 1029, in parse
File "yt_dlp\extractor\common.py", line 1016, in _parse_json
File "yt_dlp\extractor\common.py", line 999, in __print_error
File "yt_dlp\utils_utils.py", line 555, in decode
File "json\decoder.py", line 337, in decode
File "json\decoder.py", line 355, in raw_decode
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "yt_dlp\extractor\common.py", line 1013, in parse_json
File "json_init.py", line 370, in loads
File "yt_dlp\utils_utils.py", line 563, in decode
json.decoder.JSONDecodeError: Expecting value in '': line 1 column 1 (char 0)
There's a new endpoint I started seeing today through the web app. It's accessible in a tab labeled as 'Creator videos' next to the comments tab when viewing a video accessed through the user page.
It currently doesn't require any signatures or valid tokens (like the verifyFp
) to return data
secUid
aid
1988
type
1
returns sorted item lists on all requests0
returns item lists with dupes unless its the most recent 15 postscount
15
cursor
0
will return the oldest postsverifyFp
verify_
hasMoreLatest
& hasMorePrevious
= true/falsehttps://www.tiktok.com/api/creator/item_list/?aid=1988&app_language=en&app_name=tiktok_web&browser_language=en-US&browser_name=Mozilla&browser_online=true&browser_platform=Win32&browser_version=<>&channel=tiktok_web&cookie_enabled=true&count=15&cursor=<>&device_id=<>&device_platform=web_pc&focus_state=true&from_page=video&history_len=4&is_fullscreen=false&is_page_visible=true&language=en&os=windows&priority_region=US&referer=®ion=US&screen_height=1080&screen_width=1920&secUid=<>&type=0&tz_name=<>&verifyFp=<>&webcast_language=en
Can't download any users channel anymore getting
ERROR unable to extract sigi state;
You can download single video links but I tried downloading a user channel feed and it wont work atm, tested it on 2 differnet pc.
Links in the form of "https://www.tiktok.com/music/*"
I did a test but I get a "Link to Parse JSON" error.
If it doesn't, that's anyone know an alternative?
Thank you.
This is just a request for comment. Do you have any suggestions to improve the speed when using this plugin?
Fetching user video list takes a long time (the "Downloading video feed" part for each video details after getting the paged video list) compared to upstream TikTokUserIE logic (when it was working, up to circa end of October 2023).
Before, it took less than 2mins to finish and now it takes more than 2hours (~50 users, with total of ~5000 videos).
I am using an archive list so yt-dlp is not downloading most of the videos, only new ones, so almost 99% of the time taken is in scraping the video list.
I installed using python3 -m pip install -U https://github.com/bashonly/yt-dlp-TTUser/archive/master.zip
It's not working for me. How do I uninstall this?
Thank you.
I'm currently using version 2024.02.27. Previous versions downloaded videos without watermarks. Now downloaded with watermarks.
yt-dlp --use-extractors "/home/elias/yt_dlp/extractor/tt_user.py" --cookies-from-browser firefox https://www.tiktok.com/@valentinaof.4
in linux, it says no suitable extractor found.
when i use
yt-dlp --use-extractors tiktok:user --cookies-from-browser firefox https://www.tiktok.com/@valentinaof.4
the empty json error appears.
trying to install wheel again:
yt-dlp-ttuser is already installed with the same version as the provided wheel. Use --force-reinstall to force an installation of the wheel.
so how i can use it to download the vids of a tiktok profile?
yt-dlp --list-extractors | grep tik
DetikEmbed
tiktok:effect (CURRENTLY BROKEN)
tiktok:live
tiktok:sound (CURRENTLY BROKEN)
tiktok:tag (CURRENTLY BROKEN)
tiktok:user (CURRENTLY BROKEN)
vm.tiktok
There is 300++ videos in this account but when i run yt-dlp with the TT user plug in, it only retrieves 20++ videos. Any idea why? So far I have only encountered this issue with this account.
https://www.tiktok.com/@22andconfusedd
Thank you.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.