Python实战 | 如何抓取腾讯视频

嗨喽~大家好呀,这里是魔王呐 ❤ ~!

python更多源码/资料/解答/教程等 点击此处跳转文末名片免费获取

爬虫:

作用: 批量采集数据 / 模拟用户行为

原理: 模拟成 客户端 向 服务器 发送网络请求

环境介绍:

  • python 3.8 解释器

  • pycharm 编辑器

第三方模块:

  • requests >>> pip install requests

  • tqdm >>> pip install tqdm

模块安装:

win + R 输入cmd 输入安装命令 pip install 模块名 (如果你觉得安装速度比较慢, 你可以切换国内镜像源)

实现一个爬虫案例:

  1. 找数据

    m3u8 视频流

    mp4 1:00:00 10s为一个片段 360个片段 每个片段为一个视频文件 .ts

    所有的.ts后缀的视频文件地址 存储到一个文本文件当中 .m3u8

    找 .m3u8 这个文件 找到他 我们就可以去下载这个视频了
    https://f3391cba103b6a8264fc3c9e94606424.v.smtcdns.com/vipts.tc.qq.com/A76wLQY3sMxau30YvTaKOxtigWZqDWZbRZ-halc9ZfOQ/B_tRCdt2L6hl1ezG-aht1_p7GvaLBNzsRdJxWJcVS2pfaZ0OAEYH2aMWJGYS0e5l6q/svp_50112/_mwejXA_NuoJo3UmcI5sACyBgOz1bMgT33K-QfNGGUm33saIjJ3wZ3s8zCaccLPBRYzwPbBJMjuiwj22dJsQ5idKx2bGvNsTWVwYCUuOGFdTrd0VBotPoW2ydxmkfsHV-zzcuoZEwHVbcEifiQFxL1jOnfepg96z2F8RRsVWI6H4tMv7TgpVArjrFUwGqlTRyku1b2lpG2lLl_TRWjEeLFa9tlJCmlHDc6EYIZk-9u6OKHWaZLgQtA/gzc_1000102_0b53faaggaaat4aheps3w5s4akgdmmxaaz2a.f322016004.ts.m3u8?ver=4

  2. 代码实现

    用代码访问这个链接

代码展示

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:926207505
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
import requests     # 需要额外安装
import re
from tqdm import tqdmurl = 'https://f3391cba103b6a8264fc3c9e94606424.v.smtcdns.com/vipts.tc.qq.com/A76wLQY3sMxau30YvTaKOxtigWZqDWZbRZ-halc9ZfOQ/B_tRCdt2L6hl1ezG-aht1_p7GvaLBNzsRdJxWJcVS2pfaZ0OAEYH2aMWJGYS0e5l6q/svp_50112/_mwejXA_NuoJo3UmcI5sACyBgOz1bMgT33K-QfNGGUm33saIjJ3wZ3s8zCaccLPBRYzwPbBJMjuiwj22dJsQ5idKx2bGvNsTWVwYCUuOGFdTrd0VBotPoW2ydxmkfsHV-zzcuoZEwHVbcEifiQFxL1jOnfepg96z2F8RRsVWI6H4tMv7TgpVArjrFUwGqlTRyku1b2lpG2lLl_TRWjEeLFa9tlJCmlHDc6EYIZk-9u6OKHWaZLgQtA/gzc_1000102_0b53faaggaaat4aheps3w5s4akgdmmxaaz2a.f322016004.ts.m3u8?ver=4'
m3u8_text = requests.get(url).text
# 下载视频
#   所有的ts 片段视频链接获取到了 但是 链接不够完整
#   并且链接 现在还不能单独提取出来
m3u8_text = re.sub('#E.*', '', m3u8_text)
sub_ts = url.split('gzc')[0]
ts_list = m3u8_text.split()
for ts in tqdm(ts_list):ts_url = sub_ts + ts# 批量访问 ts_url 拿到 ts对应的视频数据 并且保存合并ts_data = requests.get(ts_url).contentwith open('吞噬星空.mp4', mode='ab') as f:f.write(ts_data)

尾语

最后感谢你观看我的文章呐~本次航班到这里就结束啦 🛬

希望本篇文章有对你带来帮助 🎉,有学习到一点知识~

躲起来的星星🍥也在努力发光,你也要努力加油(让我们一起努力叭)。

最后,宣传一下呀~👇👇👇更多源码、资料、素材、解答、交流皆点击下方名片获取呀👇👇

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

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

相关文章

委托线程安全

委托线程安全是指将对共享数据的访问委托给线程安全的类,从而避免在调用方代码中进行额外的同步控制。这可以通过将线程安全性限定在一个类内部来实现。以下是一个简单的例子: 假设有一个计数器类 Counter,它不是线程安全的。 public class…

使用git命令行来拉取项目

哈哈哈,在校的我可能更偏向用git,可是在实习过程中大家都用的是图形化工具,因为还不是太熟练,所以我目前还是在用的git命令行。 下边说一下大致流程吧! //拉项目 git clone 仓库地址 //根据项目来安装依赖 npm或者y…

公众号提高上限怎么操作?

一般可以申请多少个公众号?众所周知,在2013年前后,公众号申请是不限制数量的,后来企业开始限制申请50个,直到2018年的11月tx又发布,其中个人主体可申请公众号由2个调整为1个,企业主体由50个调整…

CAPL——发送自定义报文

文章目录 一、前言二、CANoe操作二、CAPL程序三、Trace结果一、前言 CAPL是CANoe自带的一个编程语言,基本语法基于C语言,通过CAPL可以发挥CANoe更高效、更强大的功能。CAPL最大的特点就是可以编程灵活的完成报文的发送,报文包括通信报文及诊断报文 本文讲述模拟一个报文周…

腾讯技术工程总结-如何写好技术文章?

文章参考:腾讯技术工程《写好一篇高质量的技术文章》 如何写好技术文章? 大家可以先思考一下,为什么要写技术文章? 我们写技术文章的目的是什么呢?面向哪些人呢? 面向人群 写技术文章的目的毫无疑问是为…

腾讯地图绘画多边形和计算面积

<!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title>地图</title></head><script src…

WorkPlus即时通讯app-私有化部署的最佳解决方案

随着数字化时代的到来&#xff0c;企业在业务发展和沟通协作方面面临着前所未有的挑战。传统的通讯工具无法满足安全、高效、全面掌控业务和生态的需求。而在这个背景下&#xff0c;WorkPlus作为安全专属的移动数字化平台崭露头角&#xff0c;成为企业实现全面业务掌控的最佳选…

Python之初识类与对象

类的概念与定义 在生活中&#xff0c;我们走在路边&#xff0c;看到一辆车&#xff0c;大脑中首先想到的是“这是一辆车&#xff0c;然后才是这是一辆什么牌子的车”&#xff0c;在这里&#xff0c;我们就用到了编程中的类的概念。同样的&#xff0c;看到一条小狗&#xff0c;…

Linux:进程地址空间

目录 1.程序地址空间 2.进程地址空间 1.程序地址空间 我们在讲C/C语言的时候&#xff0c;32位平台下&#xff0c;我们见过这样的空间布局图 我们来验证一下这张图的正确性&#xff1a; int un_gval;int init_gval100;int main(int argc, char* argv[],char* env[]){//代码…

网络安全事件分级指南

文章目录 一、特别重大网络安全事件符合下列情形之一的&#xff0c;为特别重大网络安全事件&#xff1a;通常情况下&#xff0c;满足下列条件之一的&#xff0c;可判别为特别重大网络安全事件&#xff1a; 二、重大网络安全事件符合下列情形之一且未达到特别重大网络安全事件的…

前端实现一个时间区间内,再次单选功能,使用Antd组件库内日历组件Calendar

需求&#xff1a;需要先让用户选择一个时间区间&#xff0c;然后再这个时间区间中&#xff0c;让用户再次去单选其种特殊日期。 思路&#xff1a; 1.先用Antd组件库中日期选择DatePicker.RangePicker实现让用户选择时间区间 2.在选择完时间区间后&#xff0c;用这个时间区间…

从零开始 --- 创建vue项目

1、Vue脚手架创建项目 vue create home_vue 我选择了vue3 2、引入element-plus npm i element-plus vue2 对应 npm i element-ui main.js中 import { createApp } from vue import App from ./App.vue import ElementPlus from element-plus import element-plus/theme-…

Spring框架知识总结

目录 1、Spring框架有哪些设计模式&#xff1f; 2、介绍一下Spring框架和SpringBoot框架&#xff1f; 3、介绍一下SpringBoot具有哪些功能模块&#xff1f; 4、Spring用到了什么组件&#xff1f; 5、什么是IoC? 什么是AOP&#xff1f; 6、SpringBoot运行原理&#xff1…

鸿蒙HarmonyOS开发用什么语言

1.网上流行一句有中国底蕴的话&#xff1a;鸿蒙系统方舟框架盘古大模型。都方舟框架了肯定主推的是ArkUI框架。其实还能使用C、Java和Js开发。 2.从API8开始&#xff0c;Java语言已经从鸿蒙开发剔除了&#xff0c;而官方推荐的是ArkTs.下图是ArkTS与TS、JS的关系。 ArkTs 是TS的…

BFS:八数码问题求解

八数码原题 剖析一下BFS BFS算法是一种图遍历算法&#xff0c;它从起点开始&#xff0c;逐层扩展搜索范围&#xff0c;直到找到目标节点为止。 BFS算法一般选择队列作为节点存储的数据结构&#xff0c;我们将搜索目标节点的问题抽象为寻找目标状态&#xff0c;那么队列…

Vue3 reative回显问题

1. reactive 在做项目的时候通常会遇到这种情况&#xff0c;比如我们有一个 Table 显示数据&#xff0c;添加 Table 数据的时候使用 dialog 弹出&#xff0c;在里面填写字段然后添加。 在 vue3 中&#xff0c;对于对象的响应式定义推荐使用 reactive &#xff0c;那么可以写入…

运筹学经典问题(二):最短路问题

问题描述 给定一个图&#xff08;有向图或无向图&#xff09; G ( V , E ) G (V, E) G(V,E)&#xff0c; V V V是图中点的集合&#xff0c; E E E是图中边的集合&#xff0c;图中每条边 ( i , j ) ∈ E (i, j) \in E (i,j)∈E都对应一个权重 c i j c_{ij} cij​&#xff08;…

Android取消深色适配

从Android10&#xff08;API 29&#xff09;开始&#xff0c;在原有的主题适配的基础上&#xff0c;Google开始提供了Force Dark机制&#xff0c;在系统底层直接对颜色和图片进行转换处理&#xff0c;原生支持深色模式。当系统设置深色主题背景或者进入省电模式情况下会进入深色…

2023年烟花爆竹经营单位主要负责人证模拟考试题库及烟花爆竹经营单位主要负责人理论考试试题

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2023年烟花爆竹经营单位主要负责人证模拟考试题库及烟花爆竹经营单位主要负责人理论考试试题是由安全生产模拟考试一点通提供&#xff0c;烟花爆竹经营单位主要负责人证模拟考试题库是根据烟花爆竹经营单位主要负责人…

RGB颜色表示法(RGBA解释) 以及常见的色调

RGB&#xff1a;代表red&#xff0c;green&#xff0c;blue。即用这三个色调表示所有颜色。 表示方式如&#xff1a;&#xff08;255,255,255&#xff09;白色、&#xff08;0,0,0&#xff09;黑色 改变三个不同的数值可以得到不同的颜色&#xff0c;数值取值范围为0-255&#…