python实现抖音多线程下载无水印视频【附源码】
昨天发了一个无水印解析,评论说想要多线程下载,还是比较简单的。 py文件同目录下创建url.txt,把链接一行一行复制进去,就能批量下载。
代码中的延时不能去掉,由于是多线程,速度较快,延时很重要。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | import re import requests from concurrent import futures import time headers = { 'user-agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.96 Safari/537.36' } def download(_url): try : time.sleep( 0.3 ) html3 = requests.head(_url,headers = headers) download_url = html3.headers[ 'Location' ] video_file = requests.get(download_url,headers = headers) file_name = download_url.split( '=' )[ - 1 ] print (file_name) except : print ( 'Error' ) with open (file_name + '.mp4' , 'wb' ) as code: code.write(video_file.content) def main(): data_file = open ( 'url.txt' ) data_url = data_file.read() data_url_list1 = data_url.split( '\n' ) Threads = futures.ThreadPoolExecutor( min (Max_workers, len (data_url_list1))) for x in data_url_list1: html1 = requests.head(x) first_url = html1.headers[ 'Location' ] html2 = requests.get(first_url,headers = headers) text_data = html2.text video_player_url1 = re.findall( 'playAddr: "(.*?)"' ,text_data,re.S)[ 0 ] video_player_url2 = video_player_url1.replace( 'wm' ,'') #download(video_player_url2) Threads.submit(download,video_player_url2) Max_workers = 5 main() |
千行代码,Bug何处藏。 纵使上线又怎样,朝令改,夕断肠。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具