由小宇写的直播导航系统mtfLive日前上线Github,24小时获得了23个Star。该导航系统可以将斗鱼、虎牙、触手、YY、龙珠、战旗、章鱼、电视直播按分类/关键词聚合,用户选择分类,可以观看到全网该关键词下正在直播的内容。
·开源地址:
https://github.com/mantoufan/mtfLive
·演示地址:
感谢 Wyane 提供:
感谢 work 提供:
·系统特点:
① PC站和H5移动站自适应
② 自动缓存,避免频繁抓取数据
③ 自定义抓取规则,同时支持HTML和JSON
④ 自带全网直播网站多个热门分类和游戏的抓取规则
⑤ 分类自动按照字母排序,视频自动按照人气排序
·需求环境:
PHP 7.0 +
·安装教程:
① 下载源码:
或者使用git:
git clone [email protected]:mantoufan/mtfLive.git
② 上传到根目录,如wwwroot下③ 绑定域名
·配置:
打开 index.php ,所有配置都在变量 $c 中。
大家可以参考 演示站,对应位置,修改相应文字即可,详细配置指南如下:
<?php
$c=array(
'n'=>'聚网直播',
// 网站名称 'c'=>array(
'blzy'=>array('n'=>'堡垒之夜'), // 分类标识 => 分类名称
),
't'=>1800,// 缓存过期时间
'p'=>30,// 每页30个
'z'=>array(
// 网站规则 'douyu'=>array(
't'=>'json',
// 规则类型:json,用于抓取接口,不声明,抓取html 'd'=>'https://www.douyu.com',
// 网站域名 'z'=>'https://www.douyu.com/gapi/',
// 网站分类页/JSON接口的URL公共部分(前缀) 'c'=>array(
// 分类页/JSON接口(后缀,不同分类不同) 'blzy'=>'rkc/directory/2_347/1',
),
'f'=>function($n){
// 如何处理接口返回的数据,需要返回一个 数组,数组每项包含 $a=array();
$r=@$n['data']['rl'];
if($r){
foreach($r as $k=>$v){
$a[]=array(
't'=>$v['rn'],
// 直播间标题 'a'=>'https://apic.douyucdn.cn/upload/'.$v['av'].'_middle.jpg',
// 主播头像地址 'h'=>'https://www.douyu.com/'.$v['rid'],
// 直播间地址 'i'=>$v['rs16'],
// 直播间封面 'p'=>$v['nn'],
// 主播名称 'n'=>$v['ol']*10,
// 观看人数,纯数字(用于人气排序),如果接口返回的数据是 12.4w 或 12.4万,需要使用自带函数 w2n($v['ol']),转换成纯数字 'nw'=>n2w($v['ol'])
// 观看人数,带单位 W/万(用于显示),如果接口返回的数据是 124000,需要使用自带函数 n2w($v['ol']),转换成 12.4w );
}
}
return $a;
// 记得将数组返回 },
'huya'=>array(
// 规则类型:不声明,为抓取 html 'd'=>'https://www.huya.com',
'z'=>'https://www.huya.com/g/',
'c'=>array(
'blzy'=>'3090'
),
'g'=>'#js-live-list li',
'r'=>[
't'=>['.title','title'],
// 直播间标题 ,格式,下同:['选择器(同Jquery选择器)','属性名','',function($attr){return $attr;//处理返回的属性值}] 'h'=>['.title','href'],
// 直播间地址 'i'=>['.pic','data-original'],
// 直播间封面 'p'=>['.nick','text'],
// 主播名称 'n'=>['.js-num','text','',function($n){
// 观看人数,纯数字,如果页面显示是 12.4w 或 12.4万,需要使用自带函数 w2n($v['ol']),转换成纯数字 return w2n($n);
}],
'nw'=>['.js-num','text'],
// 观看人数,带单位 W/万(用于显示),如果页面显示是 124000,需要使用自带函数 n2w($v['ol']),转换成 12.4w 'a'=>['.avatar img','data-original']
// 主播头像地址 ]
),
)
);
?>
·授权协议:
mtfLive(MTF直播导航)遵循Apache2开源协议发布,并提供免费使用。
版权所有Copyright © 2011-2030 by mtfLive(MTF直播导航) All rights reserved。 Apache Licence是著名的非盈利开源组织Apache采用的协议 该协议和BSD类似,鼓励代码共享和尊重原作者的著作权,同样允许代码修改,再作为开源或商业软件发布 需要满足的条件也和BSD类似:
需要给代码的用户一份Apache Licence;
如果你修改了代码,需要在被修改的文件中说明;
在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明;
如果再发布的产品中包含一个Notice文件,则在Notice文件中需要带有Apache icence;
你可以在Notice中增加自己的许可,但不可以表现为对Apache Licence构成更改;
Apache Licence也是对商业应用友好的许可,使用者也可以在需要的时候修改代码来满足需要并作为开源或商业产品发布/销售;
英文原文: http://www.apache.org/licenses/LICENSE-2.0.html
·使用模块:
· QueryList
· Mobile_Detect
· mtfHTTP
· Mustache
·演示图片:
·使用问答:
请注意将 PHP版本,切换到 7.0 以上,建议关闭 PHP 严格模式。Linux安装注意 cache 目录有 777 权限。