真香啊,这招可以轻松抓取某音短视频数据(附 Python 代码)

news2025/4/8 0:13:48

众所周知,某音短视频是没有提供下载链接的,视频号也没下载链接,但我就想下载下来,还有视频下面的评论我也想拿到,那要肿么办呢?其实播放链接和评论是可以拿到的,我来细细道来

文章目录

      • 抓包
      • 技术提升
      • 获取评论
      • 安装证书
      • 设置代理

抓包

通过 mitmproxy 进行抓包

在 windows 上直接使用 pip 安装即可

我们先看效果,代理配置和证书安装放到最后,要不搞半天还在安装,很占篇幅

它是一个抓包工具,支持python脚本:

mitmdump -s test.py   #安装mitmproxy完就有mitmdump命令   

通过该抓包工具,可以获取所有链接。

链接是有特征的,比如

  • 某音视频链接一般匹配web.douyinvod.com

  • 微信视频号匹配video.qq.com

  • 某音视频下的评论匹配v1/web/comment/list

所以要下载哪个,替换 if 中的匹配条件就好了:

#匹配某音短视频的评论
import json
def response(flow):
    if 'v1/web/comment/list' in flow.request.url:
        for comment in json.loads(flow.response.text)['comments']:
            print('nice111',comment['text'])

我在某音发布了一个视频,一直想把它下载下来

那就执行脚本

def response(flow):
    if 'web.douyinvod.com' in flow.request.url:
        print('nice111',flow.request.url)

刷新视频,就会出现视频链接

可以使用 you-get 下载,或者通过脚本把链接写入文件,刷一个视频,脚本就自动把链接存储好。

这样就下载到本地了:

视频下载方法同样如此,换个条件即可

技术提升

本文由技术群粉丝分享,项目源码、数据、技术交流提升,均可加交流群获取,群友已超过2000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友

方式①、添加微信号:dkl88191,备注:来自CSDN
方式②、微信搜索公众号:Python学习与数据挖掘,后台回复:加群

获取评论

同理,换汤不换药,替换 if 条件

import json
def response(flow):
    if 'v1/web/comment/list' in flow.request.url:
        for comment in json.loads(flow.response.text)['comments']:
            print('nice111',comment['text'])

选择一个短视频,打开评论,出现数据

好了,剩下的就简单了,相信聪明的你们一定都会啦!

最后我们再介绍环境配置,证书安装和配置代理的内容

安装证书

pip 安装 MitmProxy 后,还不能拦截到数据,这是因为我们没有安装证书和打开对应的监听窗口。

windows 平台的证书其实在我们装 mitmproxy 的时候系统已经自动下载了。

安装路径在我们的 C:\Users\用户名\ .mitmproxy 下,p12 结尾的证书就是 windows 平台下的

双击mitmproxy-ca.p12,进入证书导入向导。

傻瓜式安装,下一步就行

注意这里的密码填空就行了。

下一步将证书放入下列存储选项中,选择受信任的根证书颁发机构

点击完成,证书就导入到当前用户\计算机的根证书存储里面了

设置代理

打开代理,并且端口号为Proxy监听的端口号8080(手机端的安装配置与其类似),这时候重启mitmweb,可以看到下图所示,抓到本机发出的请求flow(流)了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/109695.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++——STL之list详解

C——STL之list详解🏐什么是list🏐list的使用🏀splice🏀unique🏀remove🏀sort🏐list的实现🏀迭代器类(体会c的优势)⚽迭代器的构造⚽迭代器的模板参数&#x…

Java项目:springboot+vue电影院会员管理系统

作者主页:源码空间站2022 简介:Java领域优质创作者、Java项目、学习资料、技术互助 文末获取源码 项目介绍 本项目代码架构设计简单,注释齐全,结构清晰,适合同为java初学者参考。 cinema项目是一套电影院会员管理系统…

第十五章 规则学习

15.1 基本概念 机器学习中的规则通常是指语义明确、能描述数据分布所隐含的客观规律或邻域概念、可写成“若…,则…”形式的逻辑规则。规则学习是从训练数据中学习出一组能用于对未见示例进行判别的规则。 与神经网络、支持向量机这样的黑箱模型相比,规则学习具有…

NewStarCTF公开赛week3密码学前两道题的wp

目录一、keyExchange1.原题2.考察知识点与解题思路Diffie-Hellman密钥交换3.解题脚本二、Prof. Shamirs Secret1.原题2.考察知识点与解题思路Shamir 门限方案3.解题脚本一、keyExchange 1.原题 题目给出的是题目给出的是加密过程和输出: from secret import flag…

【LeetCode每日一题:2011. 执行操作后的变量值~~~模拟】

题目描述 存在一种仅支持 4 种操作和 1 个变量 X 的编程语言: X 和 X 使变量 X 的值 加 1 –X 和 X-- 使变量 X 的值 减 1 最初,X 的值是 0 给你一个字符串数组 operations ,这是由操作组成的一个列表,返回执行所有操作后&…

Merge-On-Write 的处理流程

简单来讲,Merge-On-Write 的处理流程是: 对于每一条 Key,查找它在 Base 数据中的位置(rowsetid segmentid 行号) 如果 Key 存在,则将该行数据标记删除。标记删除的信息记录在 Delete Bitmap 中&#xff…

【C++】多态(万字详解) —— 条件 | 虚函数重写 | 抽象类 | 多态的原理

🌈欢迎来到C专栏~~多态 (꒪ꇴ꒪(꒪ꇴ꒪ )🐣,我是Scort目前状态:大三非科班啃C中🌍博客主页:张小姐的猫~江湖背景快上车🚘,握好方向盘跟我有一起打天下嘞!送给自己的一句鸡汤&#x1…

Logoist - 适用于设计师以及初次使用者,快速制作精美 logo

Logoist - 适用于设计师以及初次使用者的快速制作精美 logo 工具 从简单的标识到设计开发。它只需要一点时间来创建令人印象深刻的图像和矢量图形与Logoist。 我们的一体化应用程序为您提供了您需要的一切,将您的创意付诸实践或寻找新的灵感!它适合专业设计师和插画…

阿里云将加速与伙伴合作 促进Web3.0生态发展

12 月 15 日,在Web3.0 Cloud Day Singapore 2022 活动上,阿里云新加坡、南亚和泰国总经理 Dr Derek Wang 表示,阿里云将加速和伙伴的合作以促进创新。“我们正在与我们的合作伙伴合作以实现创新。我们仍然处于 Web 3.0 的早期阶段。我们仍然需…

【蓝桥杯选拔赛真题53】Scratch破解保险柜 少儿编程scratch图形化编程 蓝桥杯选拔赛真题讲解

目录 scratch破解保险柜 一、题目要求 编程实现 二、案例分析 1、角色分析

大数据处理之ClickHouse概述及架构参考(未完)

一、概述 中移某业务拨测系统基于业务数据拨测指标及日志的分析需要,随着Clickhouse在OLAP领域的快速崛起,以及一些特性考虑,比如: 数据量会很大,最好需要分布式; 支持实时写入,支持快速计算&a…

数据库管理-第四十九期 Exadata的存储节点管理(20221223)

数据库管理 2022-12-23第四十九期 Exadata的存储节点管理1 咋个查看数据是否被缓存到闪存卡了没2 EM13.5的Exadata监控3 存储降级总结第四十九期 Exadata的存储节点管理 本周二,抗原终于阴性了,星期三开始就回到现场开始办公。上周既然说了Exadata关于存…

[C++: 引用】

To shine,not be illuminated. 目录 1 引用概念 2 引用特性 3 常引用 4 使用场景 4.1 引用做参数 4.2 做返回值 5 传值、传引用效率比较 6 引用和指针的区别 7 总结 1 引用概念 引用不是新定义一个变量,而是给已存在变量取了一个别名,编译器不会为…

Java+Swing+mysql会员卡管理系统

JavaSwingmysql会员卡管理系统一、系统介绍二、功能展示1.主页页面2.会员信息查询3.会员信息删除三、系统实现1.members.java四、其它1.其他系统实现一、系统介绍 使用 Java 技术开发一个会员卡管理系统,具体实现功能如下: 1. 程序启动显示主界面&#…

Vue:从组件开始学习

文章目录Vue组件生命周期根据官网文档,我们可以快速使用vue3创建自己的应用代码:npm init vuelatest,然后根据自己的需要来选择对应的配置: 默认使用vite来配置项目的。 在main.ts入口文件中,我们可以看到&#xff0…

非零基础自学Golang 第17章 HTTP编程(上) 17.5 知识拓展

非零基础自学Golang 文章目录非零基础自学Golang第17章 HTTP编程(上)17.5 知识拓展17.5.1 curl工具详解第17章 HTTP编程(上) 17.5 知识拓展 17.5.1 curl工具详解 【1】curl 简介 curl是一个利用URL语法在命令行下工作的文件传输工具,于1997年首次发行。它支持文…

Java+MySQL基于ssm的互助救援车队管理系统

此项目能够更全面的为社会贡献爱心,更及时的帮助求助人,然后在后台完成整个过程最后在通过广播好人好事,在高考爱心送子、养老院奉献爱心等活动更能做到统一化,更有序让注册的私家车主有的放矢,供献爱心。现在社会的信…

MyBatis-Plus(实用篇)

文章目录一、基础组件&#xff08;接口和实现类&#xff09;1、BaseMapper\<T>2、IService\<T>3、链式查询与修改4、调用Service层操作数据二、常用注解1、TableName2、TableId3、TbaleField4、TableLogic三、条件构造器1、wapper介绍2、构造器常用方法3、组装条件…

编程艺术之变成原则

编程有一个原则&#xff0c;就是尽可能去避免重复的代码。 类的开闭原则&#xff0c;类做好后&#xff0c;就尽量不要再在类上面在修改代码&#xff0c; 耦合度&#xff1a;简单的一个例子&#xff0c;活字印刷术在之前是整版印刷&#xff0c;导致&#xff0c;如果有一个字要…

作一回白嫖怪:写一个脚本自动获取ST官网积分,用积分领取奖品

环境&#xff1a;Python、selenium、ubuntu22.04 网址&#xff1a;STMCU中文官网 chrome: 版本 108.0.5359.124&#xff08;正式版本&#xff09; &#xff08;64 位&#xff09; chromeDriver: CNPM Binaries Mirror 这两个文件我打包起来了&#xff0c;0积分方便大家…