头条文章链接,详细页面里面的视频地址下载分析、提取下载

结论是

videoid = tt-videoid

video_json = f'https://i.snssdk.com/video/urls/1/toutiao/mp4/{videoid}'

分析步骤为

目标就是这个文章链接下面的,视频 下载下来。

抓包分析

看到了 video 标签, 但是源码里面没有这个标签,发现了有个很有标识的东西: tt-videoid 。
直接说 结果: src="https://i.snssdk.com/video/urls/1/toutiao/mp4/v0301fg10000csljvd7og65kf0m8ntq0?callback=tt__video__vdefy8"
直接请求 src 得到了,

看到这种 不要慌,解密一下。

好,结果就出来了

解析代码

python 复制代码
		videoid = tt-videoid
        video_json = f'https://i.snssdk.com/video/urls/1/toutiao/mp4/{videoid}'
        headers = {
            "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7",
            "accept-language": "zh-CN,zh;q=0.9",
            "cache-control": "no-cache",
            "pragma": "no-cache",
            "priority": "u=0, i",
            "sec-ch-ua": "\"Google Chrome\";v=\"129\", \"Not=A?Brand\";v=\"8\", \"Chromium\";v=\"129\"",
            "sec-ch-ua-mobile": "?0",
            "sec-ch-ua-platform": "\"Windows\"",
            "sec-fetch-dest": "document",
            "sec-fetch-mode": "navigate",
            "sec-fetch-site": "none",
            "sec-fetch-user": "?1",
            "upgrade-insecure-requests": "1",
            "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36"
        }
        cookies = {
            "odin_tt": "a2d3ceea612f2780e30a937100bd7f046490e1444ea859921535a09461162ba4175263d58898dd877d347b78eb144dbd6cd7bb127969860c77836bbeca4e6fe5"
        }
        response = requests.get(video_json, headers=headers, cookies=cookies)
        json_data = json.loads(response.text)
        main_url = jsonpath(json_data, '$..video_3.main_url')[0] if jsonpath(json_data, '$..video_3.main_url') else None
        if main_url:
            decoded_bytes = base64.b64decode(main_url)
            video_url = decoded_bytes.decode('utf-8')

结束:

复制代码
	文章视频可以正常提取下载
相关推荐
数据牧羊人的成长笔记1 小时前
python爬虫scrapy框架使用
爬虫·python·scrapy
weixin_514221853 小时前
FDTD与matlab、python耦合
python·学习·matlab·fdtd
F_D_Z8 小时前
数据集相关类代码回顾理解 | StratifiedShuffleSplit\transforms.ToTensor\Counter
python·torchvision·transforms
tao3556679 小时前
【Python刷力扣hot100】283. Move Zeroes
开发语言·python·leetcode
小宁爱Python10 小时前
从零搭建 RAG 智能问答系统1:基于 LlamaIndex 与 Chainlit实现最简单的聊天助手
人工智能·后端·python
湖南人爱科技有限公司10 小时前
RaPhp和Python某音最新bd-ticket-guard-client-data加密算法解析(视频评论)
android·python·php·音视频·爬山算法·raphp
eqwaak011 小时前
数据预处理与可视化流水线:Pandas Profiling + Altair 实战指南
开发语言·python·信息可视化·数据挖掘·数据分析·pandas
心态特好12 小时前
详解WebSocket及其妙用
java·python·websocket·网络协议
dlraba80213 小时前
用 Python+OpenCV 实现实时文档扫描:从摄像头捕捉到透视矫正全流程
开发语言·python·opencv
小熊出擊13 小时前
【pytest】fixture 内省(Introspection)测试上下文
python·单元测试·pytest