获取抖音视频

下载所需要的抖音视频,可以通过访问响应链接进行,首先你要知道几个东西,就是开发者模式。


0、找到需要查看抖音博主的视频的主页
在这里插入图片描述

1、首先在开发者模式下找到网络,然后在搜索栏中输入post,会有几个报文。你可以忽略

2、那个与其他不同的报文,以我的为例子就是我没圈起来的这个。也就是有三个报文。

3、然后的话,随便打开一个报文,找到User-Agent,Cookie,Referer,然后把代码中的这三个替换成你找到的内容。
在这里插入图片描述

4、其次的话,将这个3个报文复制URL到代码中,替换我代码中的URL。右键复制—>复制全部的URL。注意,记得把复制的这几个url用“ ”或者‘ ’,分别包裹起来。

在这里插入图片描述

5、最后运行代码。
在这里插入图片描述


源代码如下:

import os
import time
import requests

"""
在控制面板下的网络中,找到这几个东西。
"""
headers = {
    'User-Agent': " Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 ······",
    "Cookie": "UIFID_TEMP=dca68353d0985e2a8bd3e6652fe656c462342d173f24572ea6······",
    "Referer": " https://www.douyin.com/user/MS4······"
}
"""
将下面的url,改为你要下载的视频地址。在控制面板下的网络中
"""
url = [
'https://www.douyin.com/aweme/v1/web/aweme/post······',
'https://www.douyin.com/aweme/v1/web/aweme/post······',
'https://www.douyin.com/aweme/v1/web/aweme/post······'
]
def total():
    aweme_list = []
    nickname = requests.get(urls[0], headers=headers).json()["aweme_list"][0]["author"]["nickname"] # 得到视频标题
    folder_path = f'./{nickname}'
    # 确保输出目录存在
    os.makedirs(folder_path, exist_ok=True)

    for i in range(len(urls)):
        res = requests.get(urls[i], headers=headers) # 获取请求
        aweme_list = aweme_list + res.json().get("aweme_list")
    TotalLen = len(aweme_list)
    print(f"共有{TotalLen}个视频,现在开始下载")

    # 进入开始下载函数
    download(TotalLen, nickname,aweme_list)

def download(TotalLen, nickname, aweme_list):
    length = 0
    for aweme in aweme_list:
        l1 = aweme.get("desc")
        for sep in ["?", "。", "!", "#"]: # 去掉多余的东西
            l1 = l1.split(sep)[0]
        title = str(TotalLen) + "、" + l1.strip() # 得到标题 如: 1、xxxxx
        TotalLen -= 1
        VideoName = f"./{nickname}/{title}.mp4"
        if not os.path.exists(VideoName): # 判断是不是存在
            length += 1
            url = aweme.get("video").get("play_addr").get("url_list")[-1]
            res = requests.get(url)
            with open(VideoName, "wb") as f:
                f.write(res.content)
                print(f"{title}—>下载成功!")
            if length%10==0: # 设置休眠,防止拦截
                time.sleep(5)
                print(f"休息一下,马上开始")
        else:
            print(f"{title}——>已存在")
    print(f'不错,{TotalLen}个视频下载到了"{nickname}"文件夹下,你现在可以去看了')

if __name__ == '__main__':
    total()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值