直播源PHP代理基础教程-简单实例

这里所谓的代理 就是通过php小程序来帮你抓取动态的播放地址
我们一成都电视台的为例讲解一下
成都电视台的网址是http://www.cditv.cn/show-192-1-1.html 右键查看源码
我们可以看到下面这么一段代码

<video poster="view.png" src="http://cdn1.cditv.cn/cdtv1/CDTV1.flv/playlist.m3u8?wsSecret=14578a9ccaf95abb5dca29394ec13f50&wsTime=5210929c" height="480" width="640" tabindex="0" loop='loop' controls='controls' autoplay="autoplay" preload="none" >

这就是播放地址 当然这个播放地址是动态的 那么怎么通过php来实时的抓取他呢
我先贴出代码 然后在一句句解释

<?php
$id=$_SERVER["QUERY_STRING"];
$url="http://www.cditv.cn/show-192-".$id."-1.html";
$info=file_get_contents($url);
preg_match('/poster="view.png" src="(.*?)"/i',$info,$m);
header('location:'.urldecode($m[1]));
?>

第一句就是定义id 无需多做解释
第二句就是需要采集播放地址的网址 因为成都几个台的播放网址是

http://www.cditv.cn/show-192-1-1.html
http://www.cditv.cn/show-192-2-1.html
http://www.cditv.cn/show-192-3-1.html

所以我们用到了id 倒是后分别id分别为1,2,3就是我们采集这三个不同页面的播放地址
第三句就是取内容 也无需解释 应用到其他地方不需要修改
第四句就是关键了 其实也很简单
preg_match('/poster="view.png" src="(.*?)"/i',$info,$m);
大家注意标红色的部分 左边的就是我们需要采集内容的左边部分 右边的就是右边部分
需要注意的是 我们选取的左边部分需要在所采集的网页中是唯一适配的或者是第一个适配的 不然去不到内容
第五句就是输出 也不需要解释

使用方法:复制上面那段代码 保存为cdhls.php,上传到服务器中 如果上传到根目录的话那么播放地址就是http://你的域名/cdhls.php?1和http://你的域名/cdhls.php?2等等

说明

这个是原某网站的文章(原网站已经GG),由于年代久远成都电视台的播放地址现在已经不能直接从网页源代码里直接看到和获取,需要多了些步骤,这个以后说,重要要的是这个教程的思想和实现代理的方式很有参考意义..

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

  1. 你好 说道:

    秋联系方式 有偿求教

  2. 一格 说道:

    请问老大这种里面有两个url= 如何匹配。

  3. 一格 说道:

    -
    -
    -

    -
    -
    extend_data

    这种如何匹配,里面有两个 url= 。

  4. 夏天 夏天 说道:

    @黑岛君 我试了好几次还是无法,可以联系我吗?vx:zxcqwe5649 我们谈个合作

  5. 小白 说道:

    黑鸟导师我把这段代码做成PHP文件上传空间这代理用不了,写出的代理不能用

    1. 黑鸟君 说道:

      文章中已经有说明,当前的该网页有变化,代码不能直接复制粘贴,需要做一点点变化..

      1. 织梦狗 说道:

        老师,按照你的方法,做了代理,抓取到了链接,可是载入到电视盒子上,还是播放不了。从电脑上用播放器播放一些正常。

        1. 黑鸟君 说道:

          先多换几个播放器试一下..

          1. 123 说道:

            等待你很久 看到后一定加我下 邮箱就是我的QQ老师 付学费学习,不要拒绝爱好网络的我

        2. 花田第一高手 说道:

          我抓到直播地址,但不知道怎样代换,可以指导一下吗?

      2. 123 说道:

        老师我很欣赏你 一直没有找到你的联系方式 加我下QQ:398494780 ,希望你可以看到我给你的留言老师,我要拜师学艺付学费 想把代理这块学会

  6. 祝乐高官网 说道:

    :razz: 不错 学习了

  7. zoky 说道:

    假如xxx.php?id=* 代理后可以正常播放,怎么可以变成xxx.m3u8?id=* 这种地址格式播放 :cry: 谢谢

  8. 夏日博客 说道:

    是类似于VIP解析之类的麽。

  9. 直播 说道:

    〈video _src='http://playm3u8点zhangyu点tv/live/zy_1510044056862点m3u8?auth_key=1540120995-59397830-0-9e44cf996135e59766a7ac31c3fd5b8c' id="zyvideo" width="100%" controls=""〉〈/video〉

    1. 直播 说道:

      这种代码就不会写了

      1. 黑鸟君 说道:

        章鱼TV的源,这个播放地址是本地浏览器再处理后再填上去的,直接使用文中的PHP函数并不能取到auth_key的值,即使用正则取这一段值对了也就这样_src=''是空的,所以你一直以为是正则取值没取正确..

        1. 直播 说道:

          就是说这种源是没办法代理的么?还有我试了央视网的源码,他那页面是shtml好像也不能正确代理。希望博主抽空能写这种类型源的代理方法

          1. 黑鸟君 说道:

            不是没法代理,只是你要去研究明白auth_key的值是怎么来的..

  10. 直播 说道:

    这段代码如何代理呢?_src前边没有信息,它后边倒是有id="zyvideo",PHP但是第四段代码这样写preg_match('/_src="(.*?)" id="zyvideo"/i',$info,$m);

    1. 直播 说道:

      代码老是被吃点

  11. 洁灰博客园 说道:

    欢迎互访哈~~

  12. 洁灰博客园 说道:

    :razz: 网站不错,给你带来10086个赞~

  13. 夏天烤洋芋 说道:

    :cool: 挺不错的!

  14. 风 说道:

    感谢大神分享,希望能出多一点关于php代理的教程。

  15. 子午书屋 子午书屋 说道:

    用php对html代码分析?

    1. 黑鸟君 说道:

      恩,提取了网页中一段有用的信息..

      1. wanggggg1 说道:

        请问盐城电视台,直播网址怎么做代理呢?网址:http://www.0515yc.cn/tvlook/folder76/

      2. 小白 说道:

        为什么出现500内部服务器错误

  16. fy789 说道:

    现在的地址都隐藏的很深