MCPcopy
hub / github.com/gaotianliuyun/gao / homeVodParse

Function homeVodParse

lib/drpy.js:1291–1475  ·  view source on GitHub ↗

* 首页推荐列表解析 * @param homeVodObj * @returns {string}

(homeVodObj)

Source from the content-addressed store, hash-verified

1289 * @returns {string}
1290 */
1291function homeVodParse(homeVodObj){
1292 fetch_params = JSON.parse(JSON.stringify(rule_fetch_params));
1293 let d = [];
1294 MY_URL = homeVodObj.homeUrl;
1295 // setItem('MY_URL',MY_URL);
1296 console.log(MY_URL);
1297 let t1 = (new Date()).getTime();
1298 let p = homeVodObj.推荐;
1299 print('p:'+p);
1300 if(p==='*' && rule.一级){
1301 p = rule.一级;
1302 homeVodObj.double = false;
1303 }
1304 if(!p||typeof(p)!=='string'){
1305 return '{}'
1306 }
1307 p = p.trim();
1308 let pp = rule.一级.split(';');
1309 if(p.startsWith('js:')){
1310 const TYPE = 'home';
1311 var input = MY_URL;
1312 HOST = rule.host;
1313 eval(p.replace('js:',''));
1314 d = VODS;
1315 }else {
1316 p = p.split(';');
1317 if (!homeVodObj.double && p.length < 5) {
1318 return '{}'
1319 } else if (homeVodObj.double && p.length < 6) {
1320 return '{}'
1321 }
1322 let p0 = getPP(p,0,pp,0)
1323 let _ps = parseTags.getParse(p0);
1324 _pdfa = _ps.pdfa;
1325 _pdfh = _ps.pdfh;
1326 _pd = _ps.pd;
1327 let is_json = p0.startsWith('json:');
1328 p0 = p0.replace(/^(jsp:|json:|jq:)/,'');
1329 // print(p[0]);
1330 let html = homeHtmlCache || getHtml(MY_URL);
1331 homeHtmlCache = undefined;
1332 if(is_json){
1333 // print('是json,开始处理');
1334 html = dealJson(html);
1335 }
1336 try {
1337 console.log('double:' + homeVodObj.double);
1338 if (homeVodObj.double) {
1339 let items = _pdfa(html, p0);
1340 // console.log(items.length);
1341 let p1 = getPP(p,1,pp,0);
1342 let p2 = getPP(p,2,pp,1);
1343 let p3 = getPP(p,3,pp,2);
1344 let p4 = getPP(p,4,pp,3);
1345 let p5 = getPP(p,5,pp,4);
1346 let p6 = getPP(p,6,pp,5);
1347 for (let item of items) {
1348 // console.log(p[1]);

Callers 1

homeVodFunction · 0.70

Calls 5

pushMethod · 0.80
printFunction · 0.70
getPPFunction · 0.70
getHtmlFunction · 0.70
dealJsonFunction · 0.70

Tested by

no test coverage detected