如何抓取直播源及视频URL地址-疯狂URL(教程)
直播源介绍
首先,我们来快速了解一下什么是直播源,所谓的直播源,其实就说推流地址,推流地址可能你也不知道是什么,那么我再简单说一下,推流地址就是,当某个直播开播的时候,需要将自己的直播状态实时的展示给观众,而观众看到的直播,就是从推流地址地址中实时获取的。推流地址是推流服务器的地址,推流就是把直播状态实时上传到推流服务器,而观众观看的时候,实时从推流服务器中下载,实际上叫拉流。这个过程也类似我们看在线视频一样,服务器中存放视频文件,我们观看的时候,也是从服务器中下载视频流的过程。
所以直播源地址一般分为两个部分,第一个部分是推流服务器主机地址/域名地址,第二部分是参数,一般包含时间戳以及密钥口令等。直播源地址的协议很多种,常见的app直播用rtmp,以及http,而摄像头直播常用rtsp协议,电视直播大部分是http,部分是rtmp,而直播源又分为静态与动态,静态一般是长效链接,通常没有特殊情况下,地址不变,随时可看,主要以http为主,少量的rtmp及其他,而动态直播源时效较短,通常是几秒钟到几分钟就失效了
如何抓取直播源呢?
准备工具:
模拟器或直接手机均可
抓包工具(fiddler,wireshark,疯狂URL) 系统windows
简单介绍一下以上三款工具
fiddler:代理抓包工具,主要抓取http/https,常用于抓取网站数据包,开发中常用的站点分析工具,也可以通过设置代理,抓取移动端手机app的数据,包括手机网页
wireshark:网络捕获及分析工具,与fiddler不同的是,这个抓取的范围更广,他主要抓取网络接口中的所有流量,包括tcp/udp等等,通过数据封包,然后进行分析获取我们需要的有效信息。
疯狂URL:这是一款基于winpacp以及npacp开发的抓包工具,wireshark也是基于winpacp开发的,关于winpacp的更多信息,可以去谷歌详细了解。疯狂URL支持抓取网络接口,也就是网卡数据流量,同时还支持抓取网站数据,疯狂URL实际上是做了过滤封装,很多用户如果只需要抓取特定的资源,而不需要去如何分析数据包,则使用疯狂URL是最佳的方案
以上3款工具的介绍基本如此,看个人的实际情况来选择,使用难易程度,最简单的就是疯狂URL,本次讲解如何使用疯狂URL抓取直播源,抓取模拟器中的app
步骤:
1.启动疯狂URL如下图(疯狂URL下载地址)
注意:新安装的用户安装后启动可能会出现提示缺少xxx组件/模块,需要安装对应系统的组件后方可看到网卡列表。安装组件的方法极其简单,只需要点击疯狂URL右上角的帮助选项–>找到对应系统的组件进行安装即可,如下图:
组件安装一定要选择你自身的系统对应安装,win7用户不能按照win10的组件,否则也无法使用。如果已经安装错,请前往控制面板–>卸载程序下载掉错误安装的组件,然后重新安装正确的即可。之后打开就如下图所示:
首先会看到两个界面,其中小的界面是网卡列表界面,我们选中一个我们当前使用的网卡,比如我的网卡是图中的红框部分,以WLAN 2开头,查看当前活动网卡最简单的方式是在任务栏右键–》打开任务管理器,如下图:
在任务管理器上方选择性能选项,然后在左侧列表查看相关网卡,看一下哪个网卡有流量在上传或下载,一般这个就是你要选的网卡了。图中黄色框对应的就是适配器名称和网卡名称,只要一个匹配一般就可以
还可以在网络设置中,在网络适配器中查看你使用的是什么就选什么就行。第一种方法最快捷简单
网络适配器中如图
2.选中网卡后确定,我们在主界面,目前已经自动进入监听状态,这个时候,我们只需要打开模拟器中某个直播的app,我这里演示抓取某浪直播app(其他app同理,没有任何区别,包括电视直播app,比如咪咕之类的),我直接选一个我觉得不错的小姐姐直播间进去如下图
3.从上图我们可以清除的看到,当我们进入直播间的时候,在疯狂URL的列表里会出现一个地址,每次进入一个直播间,都会增加地址,这些地址就是我们要的直播源地址了,那我们怎么看他是不是我们要的地址,会不会是平台的网页而已?这个我们在疯狂URL地址右键,播放,一试便知,如下图
4.点击播放后,这个画面和刚刚app中打开的完全就是一个人而且是同步的,所以不用怀疑,这就是我们要的直播源了。其实疯狂URL已经做了非常好的过滤,强大的过滤系统会过滤掉无关的链接,假设真遇到一些你认为不是直播的地址,你还可以手动设置过滤调节,如下图所示
5.你只需要点击类型旁边的三角形按钮,勾选你需要的链接类型即可,直播源,自然就是勾选视频了,默认情况下,没有勾选任何一项,表示所有类型都支持,但是内部仍然会过滤掉无关冗余的地址,这样做完全是为了考虑用户体验,不信你可以看看疯狂URL的左下角的数据包数量统计
6.短短几分钟的时间,数据包数量已经达到了8万多条,是不是很惊人,而我们只需要1条,要从上万甚至更多的数据包中过滤 我们需要的几条数据,真的很强大了。如果没有过滤功能,你需要从上万条数据包分析你需要的数据是一键很繁琐很浪费时间的工作,我想任何人都应该不想这么干,而且关于过滤,我们即使不使用播放器测试,也仍然一眼就知道,这个链接的类型,如下图
在类型列中,带视频格式的基本上都是可以播放的,视频格式非常多,比如flv/mp4/avi/wmv等等,而为了方便用户,只需要看到旁边有一个video的单词就表示这个链接是视频格式,支持播放器播放。
另外还需要知道的是,除了使用疯狂URL内置播放器播放之外,你仍然可以复制抓取的URL地址,到任意支持流媒体播放器中播放
如果想要抓取网站资源,我们还可以使用疯狂URL的扩展功能
他可以帮助我们抓取你指定的网站的资源,比如某些网站的直播以及在线视频等等
操作方法也非常简单,我们在只需要打开一个任意网站视频,就可以抓取到这个视频链接了
以下是X度视频的主页
我们随便点一个视频进去
最后一个视频就是我们刚刚打开的视频地址,我们可以使用自带的播放器播放,也可以复制下来,使用专用的下载工具下载或者第三方播放器播放都是可的
如何抓取直播源及视频URL地址-疯狂URL(教程)的更多相关文章
- 用php实现一个简单的爬虫,抓取电影网站的视频下载地址
昨天没什么事,先看一下电影,就用php写了一个爬虫在视频网站上进行视频下载地址的抓取,这里总结一下抓取过程中遇到的问题 1:通过访问浏览器来执行php脚本这种访问方式其实并不适合用来爬网页,因为要受到 ...
- 抓取B站小视频
抓取B站小视频的代码如下: #请求库import requests #请求头部信息(用户代理)headers={ 'User-Agent':'Mozilla/5.0 (Windows NT 6.1; ...
- Java---网络蜘蛛-网页邮箱抓取器~源码
刚刚学完Socket,迫不及待的做了这个网页邮箱抓取~~~ 现在有越来越多的人热衷于做网络爬虫(网络蜘蛛),也有越来越多的地方需要网络爬虫,比如搜索引擎.资讯采集.舆情监测等等,诸如此类.网络爬虫涉及 ...
- [转]Linux Socket编程 Socket抓取网页源码
“一切皆Socket!” 话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的socket. ——有感于实际编程和开源项目研究. 我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览 ...
- 爬虫(三)解析js,抓取优酷免费视频的真实播放地址
工具:google浏览器 + fiddler抓包工具 说明:这里不贴代码,[只讲思路!!!] 原始url = https://v.youku.com/v_show/id_XMzIwNjgyMDgwOA ...
- 使用Socket抓取网页源码
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import ...
- c# 关于抓取网页源码后中文显示乱码的原因分析和解决方法
原因分析:首先,目前大多数网站为了提升网页浏览传输速率都会对网站内容在传输前进行压缩,最常用的是GZIP压缩解压解压算法,也是支持最广的一种. 因为网站传输时采用的是GZIP压缩传输,如果我们接受we ...
- 第一篇 - bsp抓取python中文开发者社区中的所有高级教程
工具:python3.6 pycharm 库:bs4 + urllib 第一步:读取html源码 from bs4 import BeautifulSoup import urllib.reques ...
- 如何使用JAVA语言抓取某个网页中的邮箱地址
现实生活中咱们常常在浏览网页时看到自己需要的信息,但由于信息过于庞大而又不能逐个保存下来. 接下来,咱们就以获取邮箱地址为例,使用java语言抓取网页中的邮箱地址 实现思路如下: 1.使用Java.n ...
随机推荐
- mapper-spring-boot-starter 主要作用是
今天是第一次接触到 这个场景启动器内心中真是一片的茫然,学习了这么长时间我居然还不知道有这个的存在今天好好查一查资料 参考资料(https://blog.csdn.net/crq1205/articl ...
- django forms的常用命令及方法(一)
根据别人网上发布,个人爱好收集 Form表单的功能 自动生成HTML表单元素 检查表单数据的合法性 如果验证错误,重新显示表单(数据不会重置) 数据类型转换(字符类型的数据转换成相应的Python类型 ...
- Sentry 监控 - Alerts 告警
系列 1 分钟快速使用 Docker 上手最新版 Sentry-CLI - 创建版本 快速使用 Docker 上手 Sentry-CLI - 30 秒上手 Source Maps Sentry For ...
- WPF进阶技巧和实战04-资源
资源集合 每个元素都有Resources属性,该属性存储了一个资源字典集合(它是ResourceDictionary类的实例).资源集合可以包含任意类型的对象,并根据字符串编写索引. 每个元素既可以访 ...
- Unity Event Trigger 事件响应(二维,三维)添加组件
EventTrigger 上主要的方法有PointerEnter.PointerExit.PointerDown.PointerUp.PointerClick............都会显示在面板上面 ...
- RabbitMQ 3.9.7 镜像模式集群与Springboot 2.5.5 整合
1. 概述 老话说的好:做人要懂得变通,善于思考,有时稍微转个弯,也许问题就解决了. 言归正传,之前我们聊了 RabbitMQ 3.9.7 镜像模式集群的搭建,今天我们来聊聊 RabbitMQ 3.9 ...
- Java多线程--实现同步的9种方法
我们通常说的保持同步,其实就是对共享资源的保护.在单线程模型中, 我们永远不用担心"多个线程试图同时使用同一个资源的问题", 但是有了并发, 就有可能发生多个线程竞争同一个共享资源 ...
- 将Oracle数据库数据每天备份恢复一次数据到另一台服务器上两份数据
1.创建用户,授权,创建测试数据 创建用户 CREATE USER test identified by 123; 授权 grant dba to test; 创建测试数据 create table ...
- PaddlePaddle:在 Serverless 架构上十几行代码实现 OCR 能力
飞桨 (PaddlePaddle) 以百度多年的深度学习技术研究和业务应用为基础,是中国首个自主研发.功能完备. 开源开放的产业级深度学习平台,集深度学习核心训练和推理框架.基础模型库.端到端开发 ...
- 试题 算法训练 二进制数数 java解题
资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 给定L,R.统计[L,R]区间内的所有数在二进制下包含的"1"的个数之和. 如5的二进制为101,包含2个&q ...