当前位置: 首页 > news >正文

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

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

文章目录

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

抓包

通过 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(流)了

相关文章:

  • ETHERCAT从站设计与FOC伺服马达电流环控制
  • nginx 解决跨域问题——(CORS)
  • Freemodbus启动流程分析
  • Java项目:springboot网上点餐系统
  • 全国职业院校技能大赛中职组网络安全竞赛试题 —XSS漏洞(笔记文档)
  • 4、常用类和对象
  • 机器学习模型-BUPA liver disorders-探索饮酒与肝炎关系
  • 【架构师(第五十三篇)】 性能优化之 HTTP 缓存
  • 博德宝闪耀回归,九牧国际化提速
  • 20岁电竞选手自学编程转行程序员,轻松拿下大厂offer
  • 转行IT,你需要了解的真实项目研发流程是怎样的?
  • 优优聚:美团成立机器人研究院!
  • 自己个人拥有一个可以支付功能的网站?当然可以了!保姆级演示!
  • 如何在Odoo 16库存中配置批次和序列号
  • 12.22
  • 转行大数据,编程学Java还是Python?
  • Java 位运算
  • 非公用网络在工业互联网中的部署方案探讨
  • 小红书怎么高效找达人?方法不对导致耗时又不适合
  • java: 无效的目标发行版: 17 新建springBoot项目