diff --git a/FGBLH/py/皮皮虾.py b/FGBLH/py/皮皮虾.py new file mode 100644 index 00000000..00b41860 --- /dev/null +++ b/FGBLH/py/皮皮虾.py @@ -0,0 +1,169 @@ +# -*- coding: utf-8 -*- +# 本资源来源于互联网公开渠道,仅可用于个人学习及爬虫技术交流。 +# 严禁将其用于任何商业用途,下载后请于 24 小时内删除,搜索结果均来自源站,本人不承担任何责任。 + +import re,sys,uuid +from base.spider import Spider +sys.path.append('..') +class Spider(Spider): + host,config,local_uuid,parsing_config = '','','',[] + # 头部添加token认证 + headers = { + 'User-Agent': "Dart/2.19 (dart:io)", + 'Accept-Encoding': "gzip", + 'appto-local-uuid': local_uuid, + 'token': "eyJhbGciOiJIUzI1NiJ9.eyJkYXRhIjp7InVzZXJfY2hlY2siOiI4ZTEyNDE1Y2UyOGQzMGM4MWE3MDBiNWYxMDgzZTU2OCIsInVzZXJfaWQiOjM0NTYsInVzZXJfbmFtZSI6IjEwMTAxMiJ9LCJleHAiOjE4MDQ3MzkyODAuNjA4MTA4MywiaWF0IjoxNzczMjAzMjgxLCJpc3MiOiJBcHBUbyIsImp0aSI6ImZmZDMyYjk4N2VkMTg1ZjNiNGQ5Zjc5NzU2YWRjNGQ5IiwibmJmIjoxNzczMjAzMjgxLCJzdWIiOiJBcHBUbyJ9.tDhURwWVzsPy0-yXvo_d3bgsmoq9Ri5n0Y4fQsvxKy0" + } + def init(self, extend=''): + try: + host = extend.strip() + if not host.startswith('http'): + return {} + if not re.match(r'^https?://[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(:\d+)?/?$', host): + host_=self.fetch(host).json() + self.host = host_['domain'] + else: + self.host = host + self.local_uuid = str(uuid.uuid4()) + # 动态更新headers中的uuid(避免初始化时uuid为空) + self.headers['appto-local-uuid'] = self.local_uuid + response = self.fetch(f'{self.host}/apptov5/v1/config/get?p=android&__platform=android', headers=self.headers).json() + config = response['data'] + self.config = config + parsing_conf = config['get_parsing']['lists'] + parsing_config = {} + for i in parsing_conf: + if len(i['config']) != 0: + label = [] + for j in i['config']: + if j['type'] == 'json': + label.append(j['label']) + parsing_config.update({i['key']:label}) + self.parsing_config = parsing_config + return None + except Exception as e: + print(f'初始化异常:{e}') + return {} + def detailContent(self, ids): + response = self.fetch(f"{self.host}/apptov5/v1/vod/getVod?id={ids[0]}",headers=self.headers).json() + data3 = response['data'] + videos = [] + vod_play_url = '' + vod_play_from = '' + for i in data3['vod_play_list']: + play_url = '' + for j in i['urls']: + play_url += f"{j['name']}${i['player_info']['from']}@{j['url']}#" + vod_play_from += i['player_info']['show'] + '$$$' + vod_play_url += play_url.rstrip('#') + '$$$' + vod_play_url = vod_play_url.rstrip('$$$') + vod_play_from = vod_play_from.rstrip('$$$') + videos.append({ + 'vod_id': data3.get('vod_id'), + 'vod_name': data3.get('vod_name'), + 'vod_content': data3.get('vod_content'), + 'vod_remarks': data3.get('vod_remarks'), + 'vod_director': data3.get('vod_director'), + 'vod_actor': data3.get('vod_actor'), + 'vod_year': data3.get('vod_year'), + 'vod_area': data3.get('vod_area'), + 'vod_play_from': vod_play_from, + 'vod_play_url': vod_play_url + }) + return {'list': videos} + def searchContent(self, key, quick, pg='1'): + url = f"{self.host}/apptov5/v1/search/lists?wd={key}&page={pg}&type=&__platform=android" + response = self.fetch(url, headers=self.headers).json() + data = response['data']['data'] + for i in data: + if i.get('vod_pic').startswith('mac://'): + i['vod_pic'] = i['vod_pic'].replace('mac://', 'http://', 1) + return {'list': data, 'page': pg, 'total': response['data']['total']} + def playerContent(self, flag, id, vipflags): + default_ua = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1' + parsing_config = self.parsing_config + parts = id.split('@') + if len(parts) != 2: + return {'parse': 0, 'url': id, 'header': {'User-Agent': default_ua}} + playfrom, rawurl = parts + label_list = parsing_config.get(playfrom) + if not label_list: + return {'parse': 0, 'url': rawurl, 'header': {'User-Agent': default_ua}} + result = {'parse': 1, 'url': rawurl, 'header': {'User-Agent': default_ua}} + for label in label_list: + payload = { + 'play_url': rawurl, + 'label': label, + 'key': playfrom + } + try: + response = self.post( + f"{self.host}/apptov5/v1/parsing/proxy?__platform=android", + data=payload, + headers=self.headers + ).json() + except Exception as e: + print(f"请求异常: {e}") + continue + if not isinstance(response, dict): + continue + if response.get('code') == 422: + continue + data = response.get('data') + if not isinstance(data, dict): + continue + url = data.get('url') + if not url: + continue + ua = data.get('UA') or data.get('UserAgent') or default_ua + result = { + 'parse': 0, + 'url': url, + 'header': {'User-Agent': ua} + } + break + return result + def homeContent(self, filter): + config = self.config + if not config: + return {} + home_cate = config['get_home_cate'] + classes = [] + for i in home_cate: + if isinstance(i.get('extend', []),dict): + classes.append({'type_id': i['cate'], 'type_name': i['title']}) + return {'class': classes} + def homeVideoContent(self): + response = self.fetch(f'{self.host}/apptov5/v1/home/data?id=1&mold=1&__platform=android',headers=self.headers).json() + data = response['data'] + vod_list = [] + for i in data['sections']: + for j in i['items']: + vod_pic = j.get('vod_pic') + if vod_pic.startswith('mac://'): + vod_pic = vod_pic.replace('mac://', 'http://', 1) + vod_list.append({ + "vod_id": j.get('vod_id'), + "vod_name": j.get('vod_name'), + "vod_pic": vod_pic, + "vod_remarks": j.get('vod_remarks') + }) + return {'list': vod_list} + def categoryContent(self, tid, pg, filter, extend): + response = self.fetch(f"{self.host}/apptov5/v1/vod/lists?area={extend.get('area','')}&lang={extend.get('lang','')}&year={extend.get('year','')}&order={extend.get('sort','time')}&type_id={tid}&type_name=&page={pg}&pageSize=21&__platform=android", headers=self.headers).json() + data = response['data'] + data2 = data['data'] + for i in data['data']: + if i.get('vod_pic','').startswith('mac://'): + i['vod_pic'] = i['vod_pic'].replace('mac://', 'http://', 1) + return {'list': data2, 'page': pg, 'total': data['total']} + def getName(self): + pass + def isVideoFormat(self, url): + pass + def manualVideoCheck(self): + pass + def destroy(self): + pass + def localProxy(self, param): + pass diff --git a/FGBLH/海豚666.json b/FGBLH/海豚666.json index acfcc278..a16054cc 100644 --- a/FGBLH/海豚666.json +++ b/FGBLH/海豚666.json @@ -70,6 +70,13 @@ } }, { + "key": "ppx", + "name": "🐬皮皮虾秒播", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/GHK/refs/heads/main/py/皮皮虾.py", + "ext": "http://43.248.117.123:4680" + }, + { "key": "fY", "name": "🐬枫叶影院(关梯子使用)", "type": 3, diff --git a/FGBLH/鱼壳海豚.json b/FGBLH/鱼壳海豚.json index 56cf5c99..68b3a94c 100644 --- a/FGBLH/鱼壳海豚.json +++ b/FGBLH/鱼壳海豚.json @@ -94,6 +94,14 @@ "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/GHK/refs/heads/main/py/熊猫直播.py" }, + + { + "key": "ppx", + "name": "🐬皮皮虾.py", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/GHK/refs/heads/main/py/皮皮虾.py", + "ext": "http://43.248.117.123:4680" + }, { "key": "fY", "name": "🐬枫叶影院.py(关梯子使用)", diff --git a/cpu_iy/天神IY.json b/cpu_iy/天神IY.json index a089a8db..8e4f0b9e 100644 Binary files a/cpu_iy/天神IY.json and b/cpu_iy/天神IY.json differ diff --git a/cpu_iy3/lib/hbdm.png b/cpu_iy3/lib/hbdm.png new file mode 100644 index 00000000..798e74f8 Binary files /dev/null and b/cpu_iy3/lib/hbdm.png differ diff --git a/cpu_iy3/lib/星芽短剧.py b/cpu_iy3/lib/星芽短剧.py new file mode 100644 index 00000000..8a7d540f --- /dev/null +++ b/cpu_iy3/lib/星芽短剧.py @@ -0,0 +1,343 @@ +# coding = utf-8 +# !/usr/bin/python + +""" +""" + +from Crypto.Util.Padding import unpad +from Crypto.Util.Padding import pad +from urllib.parse import unquote +from Crypto.Cipher import ARC4 +from urllib.parse import quote +from base.spider import Spider +from Crypto.Cipher import AES +from bs4 import BeautifulSoup +from base64 import b64decode +import urllib.request +import urllib.parse +import binascii +import requests +import base64 +import json +import time +import sys +import re +import os + +sys.path.append('..') + +xurl = "https://app.whjzjx.cn" + +headers = { + 'User-Agent': 'Linux; Android 12; Pixel 3 XL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.101 Mobile Safari/537.36' + } + +headerf = { + "platform": "1", + "user_agent": "Mozilla/5.0 (Linux; Android 9; V1938T Build/PQ3A.190705.08211809; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/91.0.4472.114 Safari/537.36", + "content-type": "application/json; charset=utf-8" + } + +times = int(time.time() * 1000) + +data = { + "device": "2a50580e69d38388c94c93605241fb306", + "package_name": "com.jz.xydj", + "android_id": "ec1280db12795506", + "install_first_open": True, + "first_install_time": 1752505243345, + "last_update_time": 1752505243345, + "report_link_url": "", + "authorization": "", + "timestamp": times + } + +plain_text = json.dumps(data, separators=(',', ':'), ensure_ascii=False) + +key = "B@ecf920Od8A4df7" +key_bytes = key.encode('utf-8') +plain_bytes = plain_text.encode('utf-8') +cipher = AES.new(key_bytes, AES.MODE_ECB) +padded_data = pad(plain_bytes, AES.block_size) +ciphertext = cipher.encrypt(padded_data) +encrypted = base64.b64encode(ciphertext).decode('utf-8') + +response = requests.post("https://u.shytkjgs.com/user/v3/account/login", headers=headerf, data=encrypted) +response_data = response.json() +Authorization = response_data['data']['token'] + +headerx = { + 'authorization': Authorization, + 'platform': '1', + 'version_name': '3.8.3.1' + } + +class Spider(Spider): + global xurl + global headerx + global headers + + def getName(self): + return "首页" + + def init(self, extend): + pass + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def extract_middle_text(self, text, start_str, end_str, pl, start_index1: str = '', end_index2: str = ''): + if pl == 3: + plx = [] + while True: + start_index = text.find(start_str) + if start_index == -1: + break + end_index = text.find(end_str, start_index + len(start_str)) + if end_index == -1: + break + middle_text = text[start_index + len(start_str):end_index] + plx.append(middle_text) + text = text.replace(start_str + middle_text + end_str, '') + if len(plx) > 0: + purl = '' + for i in range(len(plx)): + matches = re.findall(start_index1, plx[i]) + output = "" + for match in matches: + match3 = re.search(r'(?:^|[^0-9])(\d+)(?:[^0-9]|$)', match[1]) + if match3: + number = match3.group(1) + else: + number = 0 + if 'http' not in match[0]: + output += f"#{match[1]}${number}{xurl}{match[0]}" + else: + output += f"#{match[1]}${number}{match[0]}" + output = output[1:] + purl = purl + output + "$$$" + purl = purl[:-3] + return purl + else: + return "" + else: + start_index = text.find(start_str) + if start_index == -1: + return "" + end_index = text.find(end_str, start_index + len(start_str)) + if end_index == -1: + return "" + + if pl == 0: + middle_text = text[start_index + len(start_str):end_index] + return middle_text.replace("\\", "") + + if pl == 1: + middle_text = text[start_index + len(start_str):end_index] + matches = re.findall(start_index1, middle_text) + if matches: + jg = ' '.join(matches) + return jg + + if pl == 2: + middle_text = text[start_index + len(start_str):end_index] + matches = re.findall(start_index1, middle_text) + if matches: + new_list = [f'{item}' for item in matches] + jg = '$$$'.join(new_list) + return jg + + def homeContent(self, filter): + result = {} + result = {"class": [{"type_id": "1", "type_name": "剧场"}, + {"type_id": "3", "type_name": "新剧"}, + {"type_id": "2", "type_name": "热播"}, + {"type_id": "7", "type_name": "星选"}, + {"type_id": "5", "type_name": "阳光"}], + } + + return result + + def homeVideoContent(self): + videos = [] + + url= f'{xurl}/v1/theater/home_page?theater_class_id=1&class2_id=4&page_num=1&page_size=24' + detail = requests.get(url=url, headers=headerx) + detail.encoding = "utf-8" + if detail.status_code == 200: + data = detail.json() + + for vod in data['data']['list']: + + name = vod['theater']['title'] + + id = vod['theater']['id'] + + pic = vod['theater']['cover_url'] + + remark = vod['theater']['play_amount_str'] + + video = { + "vod_id": id, + "vod_name": name, + "vod_pic": pic, + "vod_remarks": remark + } + videos.append(video) + + result = {'list': videos} + return result + + def categoryContent(self, cid, pg, filter, ext): + result = {} + videos = [] + + url = f'{xurl}/v1/theater/home_page?theater_class_id={cid}&page_num={pg}&page_size=24' + detail = requests.get(url=url,headers=headerx) + detail.encoding = "utf-8" + if detail.status_code == 200: + data = detail.json() + + for vod in data['data']['list']: + + name = vod['theater']['title'] + + id = vod['theater']['id'] + + pic = vod['theater']['cover_url'] + + remark = vod['theater']['theme'] + + video = { + "vod_id": id, + "vod_name": name, + "vod_pic": pic, + "vod_remarks": remark + } + videos.append(video) + + result = {'list': videos} + result['page'] = pg + result['pagecount'] = 9999 + result['limit'] = 90 + result['total'] = 999999 + return result + + def detailContent(self, ids): + did = ids[0] + result = {} + videos = [] + xianlu = '' + bofang = '' + + url = f'{xurl}/v2/theater_parent/detail?theater_parent_id={did}' + detail = requests.get(url=url, headers=headerx) + detail.encoding = "utf-8" + if detail.status_code == 200: + data = detail.json() + + url = 'https://fs-im-kefu.7moor-fs1.com/ly/4d2c3f00-7d4c-11e5-af15-41bf63ae4ea0/1732707176882/jiduo.txt' + response = requests.get(url) + response.encoding = 'utf-8' + code = response.text + name = self.extract_middle_text(code, "s1='", "'", 0) + Jumps = self.extract_middle_text(code, "s2='", "'", 0) + + content = '剧情:' + data['data']['introduction'] + + area = data['data']['desc_tags'][0] + + remarks = data['data']['filing'] + + # 修复剧集只有一集的问题 - 检查theaters数据是否存在且不为空 + if 'theaters' in data['data'] and data['data']['theaters']: + for sou in data['data']['theaters']: + id = sou['son_video_url'] + name = sou['num'] + bofang = bofang + str(name) + '$' + id + '#' + + bofang = bofang[:-1] if bofang.endswith('#') else bofang + xianlu = '星芽' + else: + # 如果没有theaters数据,检查是否有单个视频URL + if 'video_url' in data['data'] and data['data']['video_url']: + bofang = '1$' + data['data']['video_url'] + xianlu = '星芽' + else: + bofang = Jumps + xianlu = '1' + + videos.append({ + "vod_id": did, + "vod_content": content, + "vod_remarks": remarks, + "vod_area": area, + "vod_play_from": xianlu, + "vod_play_url": bofang + }) + + result['list'] = videos + return result + + def playerContent(self, flag, id, vipFlags): + + result = {} + result["parse"] = 0 + result["playUrl"] = '' + result["url"] = id + result["header"] = headers + return result + + def searchContentPage(self, key, quick, page): + result = {} + videos = [] + + payload = { + "text": key + } + + url = f"{xurl}/v3/search" + detail = requests.post(url=url, headers=headerx, json=payload) + if detail.status_code == 200: + detail.encoding = "utf-8" + data = detail.json() + + for vod in data['data']['theater']['search_data']: + + name = vod['title'] + + id = vod['id'] + + pic = vod['cover_url'] + + remark = vod['score_str'] + + video = { + "vod_id": id, + "vod_name": name, + "vod_pic": pic, + "vod_remarks": remark + } + videos.append(video) + + result['list'] = videos + result['page'] = page + result['pagecount'] = 9999 + result['limit'] = 90 + result['total'] = 999999 + return result + + def searchContent(self, key, quick, pg="1"): + return self.searchContentPage(key, quick, '1') + + def localProxy(self, params): + if params['type'] == "m3u8": + return self.proxyM3u8(params) + elif params['type'] == "media": + return self.proxyMedia(params) + elif params['type'] == "ts": + return self.proxyTs(params) + return None \ No newline at end of file diff --git a/cpu_iy3/spider.jar b/cpu_iy3/spider.jar index 4e48bb9c..20ce7839 100644 Binary files a/cpu_iy3/spider.jar and b/cpu_iy3/spider.jar differ diff --git a/cpu_iy3/version.txt b/cpu_iy3/version.txt index c02e71d4..035854e4 100644 --- a/cpu_iy3/version.txt +++ b/cpu_iy3/version.txt @@ -1 +1 @@ -06.17 \ No newline at end of file +06.29 \ No newline at end of file diff --git a/cpu_iy3/天神IY.png b/cpu_iy3/天神IY.png index da6f151d..073a8be5 100644 Binary files a/cpu_iy3/天神IY.png and b/cpu_iy3/天神IY.png differ diff --git a/cpu_iy3/天神小屋.png b/cpu_iy3/天神小屋.png index bc50e9b9..add74c0b 100644 --- a/cpu_iy3/天神小屋.png +++ b/cpu_iy3/天神小屋.png @@ -1 +1 @@ -[{"name":"推荐","list":[{"name":"本地库【ff】","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/本地库【ff】.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"❤下载过,才能用"},{"name":"备用库【ff】","url":"https://wget.la/https://raw.githubusercontent.com/IY-CPU/test/main/本地库【ff】.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"❤下载过,才能用"}]},{"name":"播放源下载(❤下载过,才能用)","list":[{"name":"本地【vox】","url":"http://xw.123234567.xyz:60255/jiduo/vox本地包.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"最新版本"},{"name":"本地库【ff】","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/本地库【ff】.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"2026.06.17版"},{"name":"备用库【ff】","url":"https://wget.la/https://raw.githubusercontent.com/IY-CPU/test/main/本地库【ff】.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"2026.06.17版"},{"name":"本地【小虎斑】","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/IY/main/小虎斑.zip","icon":"https://img0.baidu.com/it/u=3403550249,2192222310&fm=253&fmt=auto?w=800&h=804","version":"15.8.3"},{"name":"缘起【天神IY】","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/IY/main/缘起【天神IY】.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"2026.06.17版"},{"name":"真心全量包1","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test1/main/真心20250402-全量包1.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"2025.4.2版"},{"name":"真心全量包2","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test1/main/真心20250402-全量包2.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"2025.4.2版"},{"name":"真心增量包","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/本地【真心】.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"2026.04.25版"},{"name":"本地【PG】","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/本地【PG】1.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"20260427-0913版"}]},{"name":"简易手机版软件下载,并在线可安装","list":[{"name":"天神IY手机版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY手机版.apk","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png","version":"5.1.6_64位"},{"name":"倾心壁纸","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test1/main/倾心壁纸_1.4.7","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/倾心壁纸.png","version":"1.4.7_手机64位"},{"name":"Via原版","url":"https://res.viayoo.com/v1/via-release-cn.apk","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/Via.png","version":"官方最新版"},{"name":"Via非原版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/IY/main/文件/Via_6.4.0内置脚本版.apk","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/Via.png","version":"6.4.0_内置脚本"},{"name":"MT管理器","url":"https://pan.mt2.cn/mt/MT2.18.3-clone-target28.apk","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/MT管理器.png","version":"2.18.3_原共存版"},{"name":"MT管理器","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/MT管理器_2.14.5部分破解版.apk","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/MT管理器.png","version":"2.14.5_部分破解"},{"name":"NP管理器","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/NP管理器_3.1.25.apk","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/NP管理器.png","version":"3.1.25_原版"},{"name":"WiFi万能钥匙","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test1/main/万能钥匙_1.1.39.apk","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/WiFi万能钥匙.png","version":"1.1.39_破解版"},{"name":"蓝牙遥控","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/IY/main/文件/蓝牙遥控_2.0.9.apk","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/蓝牙遥控器.png","version":"2.0.9_原版"}]},{"name":"其他软件下载,去文件管理器查找、安装","list":[{"name":"无意云Pro版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/无意云手机版341.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/无意云.png","version":"3.4.1_手机非共存"},{"name":"无意云Pro版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/无意云电视版341.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/无意云.png","version":"3.4.1_电视非共存"},{"name":"天神IY电视版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY电视版.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png","version":"5.1.6_电视32位"},{"name":"天神IY海信版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY海信版.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png","version":"5.1.6_非共存"},{"name":"天神IY电视版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY电视64位版.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png","version":"5.1.6_电视64位"},{"name":"天神IY电视全内置版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY电视全内置版.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png","version":"5.1.6_内置32位"},{"name":"天神IY海信全内置版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY海信全内置版.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png","version":"5.1.6_内置非共存"},{"name":"天神IY电视版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY电视版250.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png","version":"2.5.0_安卓4.+版"},{"name":"小白文件管理器","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/IY/main/文件/小白文件管理器_2.8.0(TV版).zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/小白文件管理器.png","version":"2.8.0_电视版"},{"name":"天神仓","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神仓617.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png","version":"6.1.7_180电视版"},{"name":"天神仓海信版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神仓海信版617.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png","version":"6.1.7_海信非共存"},{"name":"1DM+","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/1DM+_v17.2.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/1DM.png","version":"17.2_手机版"},{"name":"洛雪音乐","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/洛雪音乐888.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/洛雪音乐.png","version":"8.8.8_手机版"},{"name":"阅读","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test1/main/阅读合集325.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/阅读.png","version":"3.25_手机版"},{"name":"家庭KTV","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/IY/main/家庭KTV115.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/家庭KTV.png","version":"1.1.5_电视版"}]}] \ No newline at end of file +[{"name":"推荐","list":[{"name":"本地库【ff】","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/本地库【ff】.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"❤下载过,才能用"},{"name":"备用库【ff】","url":"https://wget.la/https://raw.githubusercontent.com/IY-CPU/test/main/本地库【ff】.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"❤下载过,才能用"}]},{"name":"播放源下载(❤下载过,才能用)","list":[{"name":"本地【vox】","url":"http://xw.123234567.xyz:60255/jiduo/vox本地包.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"最新版本"},{"name":"本地库【ff】","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/本地库【ff】.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"2026.06.17版"},{"name":"备用库【ff】","url":"https://wget.la/https://raw.githubusercontent.com/IY-CPU/test/main/本地库【ff】.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"2026.06.17版"},{"name":"本地【小虎斑】","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/IY/main/小虎斑.zip","icon":"https://img0.baidu.com/it/u=3403550249,2192222310&fm=253&fmt=auto?w=800&h=804","version":"15.8.4"},{"name":"缘起【天神IY】","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/IY/main/缘起【天神IY】.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"2026.06.29版"},{"name":"真心全量包1","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test1/main/真心20250402-全量包1.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"2025.4.2版"},{"name":"真心全量包2","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test1/main/真心20250402-全量包2.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"2025.4.2版"},{"name":"真心增量包","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/本地【真心】.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"2026.04.25版"},{"name":"本地【PG】","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/本地【PG】1.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png","version":"20260427-0913版"}]},{"name":"简易手机版软件下载,并在线可安装","list":[{"name":"天神IY手机版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY手机版.apk","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png","version":"5.1.6_64位"},{"name":"倾心壁纸","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test1/main/倾心壁纸_1.4.7","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/倾心壁纸.png","version":"1.4.7_手机64位"},{"name":"Via原版","url":"https://res.viayoo.com/v1/via-release-cn.apk","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/Via.png","version":"官方最新版"},{"name":"Via非原版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/IY/main/文件/Via_6.4.0内置脚本版.apk","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/Via.png","version":"6.4.0_内置脚本"},{"name":"MT管理器","url":"https://pan.mt2.cn/mt/MT2.18.3-clone-target28.apk","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/MT管理器.png","version":"2.18.3_原共存版"},{"name":"MT管理器","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/MT管理器_2.14.5部分破解版.apk","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/MT管理器.png","version":"2.14.5_部分破解"},{"name":"NP管理器","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/NP管理器_3.1.25.apk","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/NP管理器.png","version":"3.1.25_原版"},{"name":"WiFi万能钥匙","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test1/main/万能钥匙_1.1.39.apk","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/WiFi万能钥匙.png","version":"1.1.39_破解版"},{"name":"蓝牙遥控","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/IY/main/文件/蓝牙遥控_2.0.9.apk","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/蓝牙遥控器.png","version":"2.0.9_原版"}]},{"name":"其他软件下载,去文件管理器查找、安装","list":[{"name":"无意云Pro版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/无意云手机版341.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/无意云.png","version":"3.4.1_手机非共存"},{"name":"无意云Pro版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/无意云电视版341.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/无意云.png","version":"3.4.1_电视非共存"},{"name":"天神IY电视版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY电视版.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png","version":"5.1.6_电视32位"},{"name":"天神IY海信版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY海信版.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png","version":"5.1.6_非共存"},{"name":"天神IY电视版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY电视64位版.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png","version":"5.1.6_电视64位"},{"name":"天神IY电视全内置版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY电视全内置版.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png","version":"5.1.6_内置32位"},{"name":"天神IY海信全内置版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY海信全内置版.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png","version":"5.1.6_内置非共存"},{"name":"天神IY电视版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY电视版250.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png","version":"2.5.0_安卓4.+版"},{"name":"小白文件管理器","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/IY/main/文件/小白文件管理器_2.8.0(TV版).zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/小白文件管理器.png","version":"2.8.0_电视版"},{"name":"天神仓","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神仓617.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png","version":"6.1.7_180电视版"},{"name":"天神仓海信版","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神仓海信版617.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png","version":"6.1.7_海信非共存"},{"name":"1DM+","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/1DM+_v17.2.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/1DM.png","version":"17.2_手机版"},{"name":"洛雪音乐","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/洛雪音乐888.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/洛雪音乐.png","version":"8.8.8_手机版"},{"name":"阅读","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test1/main/阅读合集325.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/阅读.png","version":"3.25_手机版"},{"name":"家庭KTV","url":"https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/IY/main/家庭KTV115.zip","icon":"https://gh-proxy.com/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/家庭KTV.png","version":"1.1.5_电视版"}]}] \ No newline at end of file diff --git a/cpu_iy3/小虎斑.zip b/cpu_iy3/小虎斑.zip index 7d71a92f..8bf49cc3 100644 Binary files a/cpu_iy3/小虎斑.zip and b/cpu_iy3/小虎斑.zip differ diff --git a/cpu_iy3/缘起【天神IY】.zip b/cpu_iy3/缘起【天神IY】.zip index c90ecb97..d12b94e9 100644 Binary files a/cpu_iy3/缘起【天神IY】.zip and b/cpu_iy3/缘起【天神IY】.zip differ