Python采集m3u8格式做个小姐姐动态壁纸~

news2024/11/14 19:19:31

人生苦短,我用python

首先,我和大家一样喜欢看小姐姐~

其次,看美丽的事物会让人更加有动力去…

我编不下去了哈哈哈,我就是爱看充满美感的人儿~

更多python好看的:点击此处跳转文末名片获取

在这里插入图片描述

环境

  • Python
  • pycharm

模块使用

第三方模块

  • requests

内置模块

  • re
  • json

在这里插入图片描述

如何安装python第三方模块:

  1. win + R 输入 cmd 点击确定,
    输入安装命令 pip install 模块名 (pip install requests) 回车

  2. 在pycharm中点击Terminal(终端) 输入安装命令


代码实现步骤: <基本四大步骤>

  1. 发送请求, 对于视频播放详情页url地址发送请求

  2. 获取数据, 获取网页源代码 <获取服务器返回response响应数据>

  3. 解析数据, 提取我们想要数据内容 <m3u8文件>

  4. 发送请求, 对于m3u8文件url发送请求

  5. 获取数据, 获取服务器返回response响应数据

  6. 解析数据, 提取所有ts文件内容 <视频片段url>

  7. 保存数据, 保存视频内容到本地

  8. 多个视频采集

  9. 多页数据采集

  10. 根据关键词视频下载

  11. 根据关键词视频下载

在这里插入图片描述

代码展示

更多python好看的:点击此处跳转文末名片获取

import time
import requests  
import re  
import json
import pprint

for page in range(3, 29):
    print(f'正在采集第{page}页的数据')
    time.sleep(1)
    link = 'https://www.****.cn/u/29946310'
    data = {
        'quickViewId': 'ac-space-video-list',
        'reqID': page+1,
        'ajaxpipe': '1',
        'type': 'video',
        'order': 'newest',
        'page': page,
        'pageSize': '20',
        't': '1653659024877',
    }
    headers = {
        'referer': 'https://***/u/29946310',
        'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36'
    }
    response = requests.get(url=link, params=data, headers=headers)
    ac_id_list = re.findall('atomid.*?:.*?"(\d+).*?"', response.text)
    print(ac_id_list)


    for ac_id in ac_id_list:
        url = f'https://***/v/ac{ac_id}'
        headers = {
            'referer': f'https://***/u/{ac_id}',
            'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36'
        }
        response = requests.get(url=url, headers=headers)
        title = re.findall('<title >(.*?) - 弹幕视频网 - 认真你就输啦 \(\?ω\?\)ノ- \( ゜- ゜\)つロ</title>', response.text)[0]
        html_data = re.findall('window.pageInfo = window.videoInfo = (.*?);', response.text)[0]
        json_data = json.loads(html_data)
        m3u8_url = json.loads(json_data['currentVideoInfo']['ksPlayJson'])['adaptationSet'][0]['representation'][0]['backupUrl'][0]
        m3u8_data = requests.get(url=m3u8_url, headers=headers).text
        m3u8_data = re.sub('#E.*', '', m3u8_data).split()
        print(title)
        print(m3u8_url)

最后

人生中,很多东西在得到的同时,其实也在失去。
小时候,渴望长大,但长大后却发现遗失了童年;
长大后,渴望甜蜜,但走进围城后往往怀念曾经的自由;
生命的旅途,风景无限,但心再也回不到最初。
不如现在学习,补充自己。

在这里插入图片描述

👇问题解答 · 源码获取 · 技术交流 · 抱团学习请联系👇

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

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

相关文章

使用virtualenv和pip构建项目所需的独立Python环境

1、为什么需要独立的Python环境&#xff1f;在讲技术前&#xff0c;想先讲讲目的。为什么我们需要独立的Python环境&#xff1f;这里就借用virtualenv的文档来解释吧。virtualenv is a tool to create isolated Python environments.The basic problem being addressed is one …

51-Jenkins-Periodic Backup插件实现Jenkins备份

Periodic Backup插件实现Jenkins备份前言目录结构插件备份安装插件使用插件前言 本篇来学习下使用Periodic Backup插件实现Jenkins备份 目录结构 Jenkins的所有数据都是存放在文件中的&#xff0c;所以&#xff0c;Jenins备份其实就是备份Jenkins_HOME目录。 Jenkins_Home目…

taobao.user.buyer.get( 查询买家信息API )

&#xffe5;开放平台基础API必须用户授权 查询买家信息API&#xff0c;只能买家类应用调用。 公共参数 请求地址: HTTP地址 http://gw.api.taobao.com/router/rest 公共请求参数: 公共响应参数: 请求参数 响应参数 点击获取key和secret 请求示例 TaobaoClient client new…

现在00后都是这么卷了吗?

现在的00后小年轻真的卷得过分了。前段时间我们公司来了个00年的&#xff0c;工作没两年&#xff0c;跳槽到我们公司起薪20K&#xff0c;都快接近我了。后来才知道人家是个卷王&#xff0c;从早干到晚就差搬张床到工位睡觉了。 最近和他聊了一次天&#xff0c;原来这位小老弟家…

我应该把毕业设计做到什么程度才能过关?

本篇博客包含了狗哥多年职业生涯对于软件项目的一丢丢理解&#xff0c;也讲述了对于大学生毕业设计的一些理解。如果你还是懵懵懂懂就要离开学校了&#xff0c;被老师告知不得不做出一套毕业设计的时候&#xff0c;希望你可以看到这篇博客&#xff0c;让你有点头绪&#xff0c;…

PingCAP 唐刘:一个咨询顾问对 TiDB Chat2Query Demo 提出的脑洞

导读 近日&#xff0c;TiDB Cloud 发布了 Chat2Query 功能&#xff0c;在 TiDB Cloud 上通过自然语言提问&#xff0c;即可生成相应的 SQL&#xff0c;通过 TiDB Cloud 对上传的任意数据集进行分析。Gartner 也在一份有关 ChatGPT 对数据分析影响研究的报告中提及了 PingCAP 的…

Gateway集成Netty服务

Gateway和Netty都有盲区的感觉&#xff1b; 一、Netty简介 Netty是一个异步的&#xff0c;事件驱动的网络应用框架&#xff0c;用以快速开发高可靠、高性能的网络应用程序。 传输服务&#xff1a;提供网络传输能力的管理&#xff1b; 协议支持&#xff1a;支持常见的数据传输…

Python调用百度AI实现文字识别

目录标题 前沿实战演示重中之重(开玩笑)前沿 今天我们也来高大上一下,玩一把人工智能。那就是免费调用百度AI实现图片上面的文字识别。相对于Python的第三方库,百度人工智能要更强大,毕竟人工智能不是那么容易搞的。要调用,其实很简单,关键的代码只需要三行。但需要先注…

使用cmake在win10编译yolov5+tensorRT+cuda+cudnn+protobuf代码进行混合编译

这里进行之前需要把protobuf在win10下编译&#xff0c;可以参考这篇文章从Linux下载下来的工程代码&#xff0c;这里建议直接使用vs系列打开不要用vscode打开&#xff0c;vscode对win下的cmake不友好&#xff0c;主要体现在报错机制无法直接定位&#xff0c;题主的环境是vs2022…

Kubernetes07:Service

Kubernetes07:Service 1、service存在的意义 因为Pod的IP是不断变化的&#xff0c;所以需要注册service防止pod失联 1&#xff09;为了防止Pod失联&#xff08;服务发现&#xff09; 2、定义一组Pod访问策略&#xff08;负载均衡&#xff09; 2、Pod和Service的关系-------通…

为什么要学习C++软件调试技术?掌握这类技术都有哪些好处?

目录 1、为什么要学习C软件调试技术&#xff1f; 1.1、IDE调试手段虽必不可少&#xff0c;但还不够 1.2、通过查看日志和代码去排查异常崩溃问题&#xff0c;费时费力&#xff0c;很难定位问题 1.3、有的问题很难复现&#xff0c;可能只在客户的环境才能复现 1.4、为了应对…

主打的就是I/O流,顺便把File复习了

文章目录1. File类1.1 预备知识1.2 创建文件1.3 文件的常用方法2. IO流2.1 InputStream2.2 OutputStream2.3 Reader2.4 Writer2.5 缓冲流2.6 转换流2.7 对象流2.8 打印流1. File类 1.1 预备知识 文件分隔符 Windows&#xff1a;D:\Soft\QQ\PluginLinux&#xff1a;D:/Soft/QQ…

SpringMVC使用 redis 实现缓存

简介 SpringMVC 中也可以将缓存标签和 redis 结合起来使用&#xff0c;其实此时缓存没有起作用&#xff0c;只是通过缓存的那几个注解来操作 redis 而已&#xff1b;SpringMVC 中整合 redis 比较麻烦的是注意版本冲突的问题&#xff0c;如下是官网有关于版本的要求 https://d…

【人脸识别】DDL:数据分布知识蒸馏思想,提升困难样本(遮挡、低分辨率等)识别效果

论文题目&#xff1a;《Improving Face Recognition from Hard Samples via Distribution Distillation Loss》 论文地址&#xff1a;https://arxiv.org/pdf/2002.03662v3.pdf 代码地址&#xff1a;https://github.com/HuangYG123/DDL 1.前言及相关工作 Large facial variatio…

秒懂算法 | 基于图神经网络的推荐算法

图神经网络(Graph Neural Networks,GNN)是近几年兴起的学科,用来作推荐算法自然效果也相当好,但是要学会基于图神经网络的推荐算法之前,需要对图神经网络自身有个了解。 图卷积网络(Graph Convolutional Networks,GCN)提出于2017年。GCN 的出现标志着图神经网络的出现。深度学习…

大家一起来找茬,新手第一次layout到底能挑出多少毛病?

有一个新手工程师在论坛上发了一篇帖子&#xff0c;把自己的处女PCB布线图贴出来。 如果不看其他网友的评论&#xff0c;你能看出多少问题呢&#xff1f;可以在留言区和我们互动哦~ 帖子里他还提出了自己的小见解&#xff1a;问一下&#xff0c;我觉得自动布线挺好用的啊&#…

汽车标定知识整理(一):标定简介与CCP报文协议简介

目录 一、什么是标定 二、XCP与CCP 三、CCP报文协议简介 1、CCP报文协议简介 &#xff08;1&#xff09;CRO&#xff1a;Command Receive Object &#xff0c;命令接收对象&#xff08;由Master -> Slave&#xff09; &#xff08;2&#xff09;DTO&#xff1a;Data T…

Kotlin 39. Dependency Injection依赖注入以及Hilt在Kotlin中的使用,系列2:手动依赖注入

一起来学Kotlin&#xff1a;概念&#xff1a;26. Dependency Injection依赖注入以及Hilt在Kotlin中的使用&#xff0c;系列2&#xff1a;手动依赖注入 此系列博客中&#xff0c;我们将主要介绍&#xff1a; Dependency Injection&#xff08;依赖注入&#xff09; 概念介绍。…

当IDEA加载一个MAVEN新项目时,加载不成功,无法加载依赖的解决方法

当IDEA加载一个MAVEN新项目时&#xff0c;加载不成功&#xff0c;无法加载依赖的解决方法 此文为练习项目时的错误记录 当使用IDEA引入一个MAVEN新项目时&#xff0c;点击Reload maven按钮加载不成功&#xff0c;显示如下图界面&#xff1a; 在项目中的代码显示报红&#xff0c…

urllib之ProxyHandler代理以及CookieJar的cookie内存传递和本地保存与读取的使用详解

处理更高级操作时(Cookies处理&#xff0c;代理设置)&#xff0c;需要一个强大的工具Handler&#xff0c;可以理解成各种处理器&#xff0c;有处理登录认证的、有处理Cookies的、有处理代理设置的。利用这些几乎可以做到HTTP请求中所有事情。当中urllib.request模块里的 BaseHa…