我试图从一个缩短的URL中获取tiktok视频的URL,以便提取海报的@username和帖子的视频id。我遇到的一些缩短URL的例子似乎是以“m.tiktok.com”或更具体的形式出现在Facebook/Twitter上的共享URL,”https://vm.tiktok.com/pF6GGf/". 此链接最终重定向到“https://www.tiktok.com/@blessy2flex/video/6796374554391448838…”。有没有办法只使用缩短的URL来获取此URL
我希望能够从实际URL中显示的缩短URL中获取用户名(@blessy2flex)和视频id(6796374554391448838)。我已尝试跟踪重定向,但最终得到的URL“https://m.tiktok.com/v/6833793010149412101.html...“是这样的,显然是不一样的
我也尝试过像Selenium这样的方法,它实际上最终给了我原始视频页面的HTML,在其中我可以通过搜索实际的HTML找到用户名和视频id,但这种方法似乎没有太大的可扩展性,因为我确信tiktok会注意到这一点并减慢我的进程
TikTok可能没有重定向正确的URL,因为它正在检测您的
User-Agent
。如果您使用一些“类似浏览器的”User-Agent
更新头文件,它应该可以工作以下是您解决问题的方法
最后,您可以使用regex找到用户名和视频id
re.findall(r'(@[a-zA-z0-9]*)\/.*\/([\d]*)?',response.url)
额外:现代Web服务通常非常智能,有时可能有不同的机制来阻止爬行活动。如果你计划进行大量的爬网(我认为是有效的/合法的),你还必须考虑到你请求URL页面的速率(在许多其他事情中)。如果您需要管理更多的用户代理,您可能会发现这个pip包非常有用(fake-useragent)
相关问题 更多 >
编程相关推荐