tiktok-dl icon indicating copy to clipboard operation
tiktok-dl copied to clipboard

The site tik tok changes, so now the download does not work.

Open MurloDin opened this issue 4 years ago • 36 comments

MurloDin avatar Apr 21 '20 13:04 MurloDin

No description provided.

This is incorrect, if you make too many requests to the site you can be blocked from making requests for a few hours or upto a day, If this fixes the issue please close the thread.

liner601 avatar Apr 22 '20 00:04 liner601

i'm having the same problem, with my two different ip's (at home, and from a remote server), so since it's lasted for a day or two now, I tried from a new server, which have never connected to tiktok servers before, and it's stuck on preloading...

werid avatar Apr 22 '20 08:04 werid

Описание не предоставлено.

Это неверно, если вы делаете слишком много запросов на сайт, вы можете быть заблокированы от отправки запросов в течение нескольких часов или до дня. Если это решит проблему, закройте ветку.

Can I get around the download limit?

MurloDin avatar Apr 22 '20 11:04 MurloDin

Still, the problem is new links and site design

Resolving share link: https://vm.tiktok.com/72gvVk/ Error : encountered exception 'Uncaught' (0:2873) Failed while scraping item:

MurloDin avatar Apr 22 '20 12:04 MurloDin

Preloading...Error : context deadline exceeded
Failed while scraping item: tiktok_user

also the new windows zip doesn't have the extension on the exe file ?? whats that about

thenetguy avatar Apr 22 '20 15:04 thenetguy

Having the same issue here today. They indeed changed their layout once again. I only download 10-20 videos a day so I'd be surprised if it was a limit issue.

bandicootdancing avatar Apr 22 '20 18:04 bandicootdancing

@pikami TikTok changed the site layout, the script doesn't work at all. Please look into the matter

rabea98 avatar Apr 22 '20 23:04 rabea98

Interestingly enough, it only works if you turn on debug mode.

pmjm avatar Apr 23 '20 00:04 pmjm

Still, the problem is new links and site design

Resolving share link: https://vm.tiktok.com/72gvVk/ Error : encountered exception 'Uncaught' (0:2873) Failed while scraping item:

Yep it seems the limit was unrelated in this case.

Preloading...Error : context deadline exceeded
Failed while scraping item: tiktok_user

also the new windows zip doesn't have the extension on the exe file ?? whats that about

Just change it to an exe and itll work.

Interestingly enough, it only works if you turn on debug mode.

How would you go about doing this?

liner601 avatar Apr 23 '20 02:04 liner601

How would you go about doing this?

By adding the -debug option tiktok-dl -debug URL

Can confirm it works with the debug option on a desktop. Doesn't work on my headless machine.

bandicootdancing avatar Apr 23 '20 04:04 bandicootdancing

How would you go about doing this?

By adding the -debug option tiktok-dl -debug URL

Can confirm it works with the debug option on a desktop. Doesn't work on my headless machine.

Doesn't seem to work for me, the tool seems to vary between working and not working very often.

liner601 avatar Apr 23 '20 04:04 liner601

It doesn’t work for me also with the debug option

rabea98 avatar Apr 23 '20 05:04 rabea98

How would you go about doing this?

By adding the -debug option tiktok-dl -debug URL

Can confirm it works with the debug option on a desktop. Doesn't work on my headless machine.

When I add the debug mode a chrome tab opens and it goes to the profiles page but it won't load. The thing is on my regular user chrome the page loads just fine.

AlphaSlayer1964 avatar Apr 23 '20 08:04 AlphaSlayer1964

When I add the debug mode a chrome tab opens and it goes to the profiles page but it won't load. The thing is on my regular user chrome the page loads just fine.

You're right. I tested a single video without testing a full profile. Single videos still work but even with the debug option the profile page is blank in browser.

bandicootdancing avatar Apr 23 '20 14:04 bandicootdancing

When I add the debug mode a chrome tab opens and it goes to the profiles page but it won't load. The thing is on my regular user chrome the page loads just fine.

You're right. I tested a single video without testing a full profile. Single videos still work but even with the debug option the profile page is blank in browser.

Weird thing is if you inspect element the page it is "loaded" has the links to the first block of videos and everything don't know why when it creates a new user it breaks.

AlphaSlayer1964 avatar Apr 23 '20 17:04 AlphaSlayer1964

Tiktok detects that the browser is being controlled by automation software, I don't have time to investigate crrently, but I will in the future, if anyone has free time to investigate and come up with a fix, fork this repo and create a PR with your fixes.

pikami avatar Apr 23 '20 17:04 pikami

Tiktok detects that the browser is being controlled by automation software, I don't have time to investigate crrently, but I will in the future, if anyone has free time to investigate and come up with a fix, fork this repo and create a PR with your fixes.

So i'm working on a python script that grabs the https://www.tiktok.com/@user/video/randomnumbers link to feed into yuotube-dl and two things I have found: First using selenium with firefox has fixed the not loading part Second some of the https://www.tiktok.com/@user/video/randomnumbers don't work with youtube-dl so I'm trying to figure out how to grab that direct link (from the user profile) that looks like v16.muscdn like you'rs seems to do. I have the regex to find it but getting it to pop up (have to hover over the video) is where I'm stuck at right now. I should also state this is like my first time writing something like this and I have no idea what I'm doing.

AlphaSlayer1964 avatar Apr 24 '20 10:04 AlphaSlayer1964

@AplhaSlayer1964 I didn't want to resort to using selenium because each selenium driver version requires a specific browser version and it would be a hassle to setup for users, but I might migrate my code to selenium if I can't figure out how their detection works. If you want you can fork my project and try to migrate it to selenium, should be simple enough, the only file that needs to be changed is client/executeClientAction.go because it handles all the browser driving stuff. Edit: I plan on investigating further thus weekend.

pikami avatar Apr 24 '20 12:04 pikami

@pikami

Have you tried bs4 or chromedriver.exe bundled with the script?

DankMemeGuy avatar Apr 27 '20 12:04 DankMemeGuy

@DankMemeGuy bs4 wouldn't work because tiktok loads videos using JS didn't use chromedriver because each driver version needs a specific version of chrome which would be a hastle to setup for the users

pikami avatar Apr 27 '20 12:04 pikami

@pikami

You sure about that? I used a script before that attached a chromedriver.exe with the .py script and it worked fine (to this day) without the person knowing what version of chrome I had, and I continue to update my real version of chrome but keep that chromedriver.exe that came with it in the folder of the .py

DankMemeGuy avatar Apr 28 '20 11:04 DankMemeGuy

is there anyway to save all of a users videos? or is everything broken as of now?

tiaa4c avatar May 02 '20 02:05 tiaa4c

@tiaa4c It's broken as of now

pikami avatar May 02 '20 05:05 pikami

Screen Shot 2020-05-02 at 2 39 49 AM Can it download directly from the API data? I grabbed this via curl after copying from chrome. The downloadAddr links directly to the file.

mattcodez avatar May 02 '20 06:05 mattcodez

@mattcodez No, it can't, this script scrapes the html of the page, no code was written to deal with their api

pikami avatar May 02 '20 06:05 pikami

is there anyway to save all of a users videos? or is everything broken as of now?

Use this tool: https://github.com/drawrowfly/tiktok-scraper

rabea98 avatar May 03 '20 05:05 rabea98

@pikami

You sure about that? I used a script before that attached a chromedriver.exe with the .py script and it worked fine (to this day) without the person knowing what version of chrome I had, and I continue to update my real version of chrome but keep that chromedriver.exe that came with it in the folder of the .py

Here's a script that uses selenium and chrome web driver https://github.com/vashukarn/tiktok-dl info: It is a python automated script that downloads all videos of a particular TikTok user at once. As we know that web scraping doesn't work with BeautifulSoup for Dynamic pages in which that code go on updating. So, I used the selenium web browser to scrape videos from TikTok.

rabea98 avatar May 06 '20 18:05 rabea98

@pikami You sure about that? I used a script before that attached a chromedriver.exe with the .py script and it worked fine (to this day) without the person knowing what version of chrome I had, and I continue to update my real version of chrome but keep that chromedriver.exe that came with it in the folder of the .py

Here's a script that uses selenium and chrome web driver https://github.com/vashukarn/tiktok-dl info: It is a python automated script that downloads all videos of a particular TikTok user at once. As we know that web scraping doesn't work with BeautifulSoup for Dynamic pages in which that code go on updating. So, I used the selenium web browser to scrape videos from TikTok.

Seems to work as a temporary solution but is too slow to be considered a valid option.

liner601 avatar May 08 '20 11:05 liner601

here is my opinion we copy-cat the basic workflow of youtube-dl, but necessarily we add --verbose. without any option, the stdout is not helping, either for the user or developer. in my assumption, this just for fetch all video, not just a single video.

that opinion is made without examining the code base, not go developer tho :)

sukrosono avatar Sep 10 '20 21:09 sukrosono

I am willing to put a bounty on this. $100 USD. Is this okay to do? A working copy in the next couple of weeks and I'll paypal/cashapp/payoneer the bounty.

marcusawereally avatar Feb 09 '21 14:02 marcusawereally