From 4820ae998e390ae3c8d5042c6dc6f4c53dfac104 Mon Sep 17 00:00:00 2001 From: alantang <107459091+alantang1977@users.noreply.github.com> Date: Wed, 19 Feb 2025 13:12:31 +0800 Subject: [PATCH] Delete py/pyxpg.py --- py/pyxpg.py | 172 ---------------------------------------------------- 1 file changed, 172 deletions(-) delete mode 100644 py/pyxpg.py diff --git a/py/pyxpg.py b/py/pyxpg.py deleted file mode 100644 index 137d6c0e..00000000 --- a/py/pyxpg.py +++ /dev/null @@ -1,172 +0,0 @@ -# coding=utf-8 -# !/usr/bin/python -import sys - -sys.path.append('') -from base.spider import Spider -from urllib.parse import quote - -class Spider(Spider): - def getName(self): - return "xpg" - - def init(self, extend=""): - pass - - def isVideoFormat(self, url): - pass - - def manualVideoCheck(self): - pass - - def destroy(self): - pass - - def homeContent(self, filter): - data = self.fetch( - "{0}/api.php/v2.vod/androidtypes".format(self.host), - headers=self.header, - ).json() - dy = { - "classes": "类型", - "areas": "地区", - "years": "年份", - "sortby": "排序", - } - filters = {} - classes = [] - for item in data['data']: - has_non_empty_field = False - item['soryby'] = ['updatetime', 'hits', 'score'] - demos = ['时间', '人气', '评分'] - classes.append({"type_name": item["type_name"], "type_id": str(item["type_id"])}) - for key in dy: - if key in item and len(item[key]) > 1: - has_non_empty_field = True - break - if has_non_empty_field: - filters[str(item["type_id"])] = [] - for dkey in item: - if dkey in dy and len(item[dkey]) > 1: - values = item[dkey] - value_array = [ - {"n": demos[idx] if dkey == "sortby" else value.strip(), "v": value.strip()} - for idx, value in enumerate(values) - if value.strip() != "" - ] - filters[str(item["type_id"])].append( - {"key": dkey, "name": dy[dkey], "value": value_array} - ) - result = {} - result["class"] = classes - result["filters"] = filters - return result - - host = "http://item.xpgtv.com" - header = { - 'User-Agent': 'okhttp/3.12.11', - 'token': 'ElEDlwCVgXcFHFhddiq2JKteHofExRBUrfNlmHrWetU3VVkxnzJAodl52N9EUFS+Dig2A/fBa/V9RuoOZRBjYvI+GW8kx3+xMlRecaZuECdb/3AdGkYpkjW3wCnpMQxf8vVeCz5zQLDr8l8bUChJiLLJLGsI+yiNskiJTZz9HiGBZhZuWh1mV1QgYah5CLTbSz8=', - 'token2': 'a0kEsBKRgTkBZ29NZ3WcNKN/C4T00RN/hNkmmGa5JMBeEENnqydLoetm/t8=', - 'user_id': 'XPGBOX', - 'version': 'XPGBOX com.phoenix.tv1.5.3', - 'timestamp': '1732286435', - 'hash': 'd9ab', - } - - def homeVideoContent(self): - rsp = self.fetch("{0}/api.php/v2.main/androidhome".format(self.host), headers=self.header) - root = rsp.json()['data']['list'] - videos = [] - for vodd in root: - for vod in vodd['list']: - videos.append({ - "vod_id": vod['id'], - "vod_name": vod['name'], - "vod_pic": vod['pic'], - "vod_remarks": vod['score'] - }) - result = { - 'list': videos - } - return result - - def categoryContent(self, tid, pg, filter, extend): - parms = [] - parms.append(f"page={pg}") - parms.append(f"type={tid}") - if extend.get('areas'): - parms.append(f"area={quote(extend['areaes'])}") - if extend.get('years'): - parms.append(f"year={quote(extend['yeares'])}") - if extend.get('sortby'): - parms.append(f"sortby={extend['sortby']}") - if extend.get('classes'): - parms.append(f"class={quote(extend['classes'])}") - parms = "&".join(parms) - result = {} - url = '{0}/api.php/v2.vod/androidfilter10086?{1}'.format(self.host, parms) - rsp = self.fetch(url, headers=self.header) - root = rsp.json()['data'] - videos = [] - for vod in root: - videos.append({ - "vod_id": vod['id'], - "vod_name": vod['name'], - "vod_pic": vod['pic'], - "vod_remarks": vod['score'] - }) - result['list'] = videos - result['page'] = pg - result['pagecount'] = 9999 - result['limit'] = 90 - result['total'] = 999999 - return result - - def detailContent(self, ids): - id = ids[0] - url = '{0}/api.php/v3.vod/androiddetail2?vod_id={1}'.format(self.host, id) - rsp = self.fetch(url, headers=self.header) - root = rsp.json()['data'] - node = root['urls'] - d = [it['key'] + "$" + f"http://c.xpgtv.net/m3u8/{it['url']}.m3u8" for it in node] - vod = { - "vod_name": root['name'], - 'vod_play_from': '小苹果', - 'vod_play_url': '#'.join(d), - } - print(vod) - result = { - 'list': [ - vod - ] - } - return result - - def searchContent(self, key, quick, pg='1'): - url = '{0}/api.php/v2.vod/androidsearch10086?page={1}&wd={2}'.format(self.host, pg, key) - rsp = self.fetch(url, headers=self.header) - root = rsp.json()['data'] - videos = [] - for vod in root: - videos.append({ - "vod_id": vod['id'], - "vod_name": vod['name'], - "vod_pic": vod['pic'], - "vod_remarks": vod['score'] - }) - result = { - 'list': videos - } - return result - - def playerContent(self, flag, id, vipFlags): - result = {} - result["parse"] = 0 - result["url"] = id - result["header"] = self.header - return result - - def localProxy(self, param): - pass - -