更新 'SrcJyPublic.js'

master
src48597962 8 months ago
parent 55d7c61b3f
commit 364ac21a06
  1. 85
      SrcJyPublic.js

@ -26,13 +26,47 @@ function getFile(lx) {
//获取所有接口或解析
function getDatas(lx, isyx) {
let datalist = [];
let sourcefile = getFile(lx);
let sourcedata = fetch(sourcefile);
if(sourcedata != ""){
try{
eval("datalist=" + sourcedata+ ";");
}catch(e){
datalist = [];
if(getItem('runMode','1')=='1'){
let sourcefile = getFile(lx);
let sourcedata = fetch(sourcefile);
if(sourcedata != ""){
try{
eval("datalist=" + sourcedata+ ";");
}catch(e){
datalist = [];
}
}
}else if(getItem('runMode','1')=='2'){
if(Juconfig['dySource']){
let dyJkTmpFile = "hiker://files/_cache/"+md5(Juconfig['dySource'])+".txt";
if(!fileExist(dyJkTmpFile)){
let contnet = getJkContnet(Juconfig['dySource']);
if(contnet){
writeFile(dyJkTmpFile, contnet);
}
}
if(fileExist(dyJkTmpFile)){
try{
let data = JSON.parse(fetch(dyJkTmpFile));
let jklist = data.sites || [];
jklist.forEach(obj=>{
let arr;
if(/^csp_AppYs/.test(obj.api)){
arr = { "name": obj.name, "url": obj.ext, "type": getapitype(obj.ext)};
}else if((obj.type==1||obj.type==0)&&obj.api.indexOf('cms.nokia.press')==-1){
arr = { "name": obj.name, "url": obj.api, "type": "cms"};
if(obj.categories){
arr["categories"] = obj.categories;
}
}else if(obj.type==4){
arr = { "name": obj.name, "url": obj.api, "type": "t4", "ext": obj.ext};
}
if(arr){
datalist.push(arr);
}
})
}catch(e){}
}
}
}
@ -47,7 +81,22 @@ function getDatas(lx, isyx) {
let result = withoutStop.concat(withStop);
return result;
}
//获取在线文件内容
function getJkContnet(url) {
if(!url.startsWith('http')){
return '';
}
if(url.startsWith('https://raw.github')){
let proxys = $.require('ghproxy').getproxy();
for(let i=0;i<proxys.length;i++){
let content = fetch(proxys[i]+url, {timeout:3000});
if (content && !content.trim().startsWith('<!DOCTYPE html>') && !content.startsWith('<html>')) {
return content;
}
}
}
return fetch(url, {timeout:10000});
}
//获取分组接口列表
function getGroupLists(datas, k) {
k = k=="全部"?"":k;
@ -320,6 +369,26 @@ function sortByPinyin(arr) {
}
return arrNew
}
//app类接口类型自动
function getapitype(apiurl) {
if(apiurl){
if(apiurl.includes('.vod')){
return "v1";
}else if(apiurl.includes('/app/')){
return "app";
}else if(apiurl.includes('app.php')){
return "v2";
}else if(/iptv|Chengcheng/.test(apiurl)){
return "iptv";
}else if(apiurl.includes('provide/vod/')){
return "cms";
}else{
return "";
}
}else{
return "";
}
}
//文字上色
function colorTitle(title, Color) {
return '<font color="' + Color + '">' + title + '</font>';

Loading…
Cancel
Save