| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> JavaScript知识库 -> 梨视频多个视频获取—requests+ajax—并保存在本地 -> 正文阅读 |
|
[JavaScript知识库]梨视频多个视频获取—requests+ajax—并保存在本地 |
目录 学习记录:开学第一天~~~~ 一、目标网址分析获取梨视频网址的部分视频并保存在本地,获取体育专栏的最新板块:体育热点资讯短视频_体育热点新闻-梨视频官网-Pear Video 先在此页面随便复制一个视频的名字到网页源代码中检索: ?我们点进视频详情页:(这里的 href 链接是不全的,没有协议。这个后面拼接一下就OK了。)? ?? ?来到这里后,发现它是动态加载的:就直接来抓包看看。 ?但是去请求这个url的时候,发现并没有获取到我们想要的数据。 ?这样的话,就只有继续慢慢去找了.......在ajax接口中,没有找到其他的接口。那就再回到网页中去。 在这里找到一个url,它还是MP4后缀的,这种情况我们看到要去试试滴。复制下来去请求它后,居然获取到了视频数据。?那就在去网页源代码中看能找到不。 ?发现在这里没找到url,那这就有点整人了,,,我们之前找到了2个url,一个不能请求到视频,一个能请求到视频却在网页源代码中找不到。那没得法,只有来看看他们有什么不同:
对比发现: 分析多个视频的url后发现 cont??是不变的,变化的是那两串数值,这样后就只有去网页中去寻找了;存在?systemTime 中 ?href 链接中 : ?想要获取到真正的视频url : ①要对我们后面拿到的 href 链接进行处理,取出那串数字。②在视频详情的ajax接口返回的json数据中提取出?systemTime 。?最后再进行它们的拼接就OK了~~~~~ 好,现在就可以弄代码了(其实应该是边分析网页边写代码来验证的) 二、代码实现因为想要下载的是多个视频,那就需要拿到多个视频的href链接。但这个网站的主页它又是动态加载的(懒加载的,需要鼠标滑动,它才会慢慢的加载出后面的视频) ?这里还是来到抓包后发现: ?有这些参数:categoryId——视频类别,mrd——0到1的随机数,star——从哪个视频开始,filterIds——应该是新加载出来视频的cont的列表~~~~??但我们可以用selenium来点击网页的 加载更多从而来获取网页源码(虽然简单,但是有很大的缺点:就是太慢了)先这样用吧,后面在想办法换其他方法爬取。 获取多个href代码:
运行检验:发现没有错误 ?那就可以写性代码了:(因为后面的代码都想要href,href没错后面代码就可以进行了。) 总代码:
运行看看:在盘目录下打开: 但是还有个地方要改进,就是视频的名字,有些视频名字有特殊符号,而在写入视频数据时,这个是会报错的: 把他处理一下就OK了~~~~ ?bye~~~~~~ ? ? |
|
JavaScript知识库 最新文章 |
ES6的相关知识点 |
react 函数式组件 & react其他一些总结 |
Vue基础超详细 |
前端JS也可以连点成线(Vue中运用 AntVG6) |
Vue事件处理的基本使用 |
Vue后台项目的记录 (一) |
前后端分离vue跨域,devServer配置proxy代理 |
TypeScript |
初识vuex |
vue项目安装包指令收集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 10:43:40- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |