diff --git a/FGBLH/666 b/FGBLH/666 new file mode 100644 index 00000000..0d95e381 --- /dev/null +++ b/FGBLH/666 @@ -0,0 +1,426 @@ +{ + "spider": "", + "logo": "https://img.freepik.com/free-vector/cute-dolphin-swimming-cartoon-vector-icon-illustration-animal-nature-icon-isolated-flat-vector_138676-12582.jpg?semt=ais_hybrid&w=740&q=80", + "wallpaper":"http://tool.teyonds.com/api", + "warningText": "注意:如果别人倒卖海豚影视接口收费的都是骗子,没有qq群微信群,只有tg官方交流群 TG:@hshsjk", + "sites": [ + { + "key": "男同网", + "name": "🐬男同网", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/男同网.py" + } + ], + "parses": [ + { + "name": "盘古", + "type": 0, + "url": "https://www.playm3u8.cn/jiexi.php?url=", + "ext": { + "header": { + "user-agent": "Mozilla/5.0 (Linux; Android 13; V2049A Build/TP1A.220624.014; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/116.0.0.0 Mobile Safari/537.36" + } + } + }, + { + "name": "789解析1", + "type": 0, + "url": "https://jiexi.789jiexi.icu:4433/?url=" + }, + { + "name": "789解析2", + "type": 0, + "url": "https://jiexi.789jiexi.com/?url=" + }, + { + "name": "虾米解析", + "type": 0, + "url": "https://jx.xmflv.com/?url=" + }, + { + "name": "淘片解析", + "type": 0, + "url": "https://jx.yparse.com/index.php?url=" + }, + { + "name": "解析1", + "type": 0, + "url": "https://huayong.net/999/?v=" + }, + { + "name": "解析2", + "type": 0, + "url": "https://jx.m3u8.tv/jiexi/?url=" + }, + { + "name": "解析3", + "type": 0, + "url": "https://t2.qlplayer.cyou/player/analysis.php?v=" + }, + + { + "name": "解析4", + "type": 0, + "url": "https://www.ckplayer.vip/jiexi/?url=" + }, + { + "name": "解析5", + "type": 0, + "url": "https://nm.xxxc137.top/static/player/artplayer.html?url=" + }, + { + "name": "解析6", + "type": 0, + "url": "https://www.yemu.xyz/?url=" + }, + { + "name": "冰豆", + "type": 0, + "url": "https://bd.jx.cn/?url=" + }, + { + "name":"爱酷", + "type":0, + "url":"https://jx.zhanlangbu.com/?url=" + }, + {"name":"云解析","type":0,"url":"https://jx.yparse.com/index.php?url=","ext":{"header":{"user-agent":"Mozilla/5.0 (Linux; Android 13; V2049A Build/TP1A.220624.014; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/116.0.0.0 Mobile Safari/537.36"}}}, + {"name":"777","type":0,"url":"https://jx.jsonplayer.com/player/?url=","ext":{"header":{"user-agent":"Mozilla/5.0 (Linux; Android 13; V2049A Build/TP1A.220624.014; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/116.0.0.0 Mobile Safari/537.36"}}}, + {"name":"-剖云-","type":0,"url":"https://www.kkvip2022.com/vip/jiexi1/?url=","ext":{"header":{"user-agent":"Mozilla/5.0 (Linux; Android 13; V2049A Build/TP1A.220624.014; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/116.0.0.0 Mobile Safari/537.36"}}}, + {"name":"-全看-","type":0,"url":"https://jx.quankan.app/?url=","ext":{"header":{"user-agent":"Mozilla/5.0 (Linux; Android 13; V2049A Build/TP1A.220624.014; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/116.0.0.0 Mobile Safari/537.36"}}} + ], + "doh": [ + { + "name": "Google", + "url": "https://dns.google/dns-query", + "ips": [ + "8.8.4.4", + "8.8.8.8" + ] + }, + { + "name": "Cloudflare", + "url": "https://cloudflare-dns.com/dns-query", + "ips": [ + "1.1.1.1", + "1.0.0.1", + "2606:4700:4700::1111", + "2606:4700:4700::1001" + ] + }, + { + "name": "AdGuard", + "url": "https://dns.adguard.com/dns-query", + "ips": [ + "94.140.14.140", + "94.140.14.141" + ] + }, + { + "name": "DNSWatch", + "url": "https://resolver2.dns.watch/dns-query", + "ips": [ + "84.200.69.80", + "84.200.70.40" + ] + }, + { + "name": "Quad9", + "url": "https://dns.quad9.net/dns-quer", + "ips": [ + "9.9.9.9", + "149.112.112.112" + ] + } + ], + "ads": [ + "mozai.4gtv.tv", + "static-mozai.4gtv.tv" + ], + "lives": [ + { + "name": "🐬海豚佬🔞午夜剧场(挂梯)", + "type": 0, + "playerType": 2, + "epg": "https://epg.112114.xyz/?ch={name}&date={date}", + "logo": "https://epg.112114.xyz/logo/{name}.png", + "url": "https://gh-proxy.com/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/午夜剧场.txt", + "header": { + "X-Api-key": "8692bd33270440d4d2941b814b81a25a1eb84a7205532971714c4299c57449e0..0..1738210005..5cf2c4ad-043b-4234-83a2-e84ae917" + } + }, + { + "name": "🐬海豚佬xxx视频资源🔞", + "type": 0, + "ua": "okhttp", + "url": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/xxx视频资源.txt" + } + ], + "ijk": [ + { + "group": "软解码", + "options": [ + { + "category": 4, + "name": "opensles", + "value": "0" + }, + { + "category": 4, + "name": "overlay-format", + "value": "842225234" + }, + { + "category": 4, + "name": "framedrop", + "value": "1" + }, + { + "category": 4, + "name": "soundtouch", + "value": "1" + }, + { + "category": 4, + "name": "start-on-prepared", + "value": "1" + }, + { + "category": 1, + "name": "http-detect-range-support", + "value": "0" + }, + { + "category": 1, + "name": "fflags", + "value": "fastseek" + }, + { + "category": 2, + "name": "skip_loop_filter", + "value": "48" + }, + { + "category": 4, + "name": "reconnect", + "value": "1" + }, + { + "category": 4, + "name": "enable-accurate-seek", + "value": "0" + }, + { + "category": 4, + "name": "mediacodec", + "value": "0" + }, + { + "category": 4, + "name": "mediacodec-auto-rotate", + "value": "0" + }, + { + "category": 4, + "name": "mediacodec-handle-resolution-change", + "value": "0" + }, + { + "category": 4, + "name": "mediacodec-hevc", + "value": "0" + }, + { + "category": 1, + "name": "dns_cache_timeout", + "value": "600000000" + } + ] + }, + { + "group": "硬解码", + "options": [ + { + "category": 4, + "name": "opensles", + "value": "0" + }, + { + "category": 4, + "name": "overlay-format", + "value": "842225234" + }, + { + "category": 4, + "name": "framedrop", + "value": "1" + }, + { + "category": 4, + "name": "soundtouch", + "value": "1" + }, + { + "category": 4, + "name": "start-on-prepared", + "value": "1" + }, + { + "category": 1, + "name": "http-detect-range-support", + "value": "0" + }, + { + "category": 1, + "name": "fflags", + "value": "fastseek" + }, + { + "category": 2, + "name": "skip_loop_filter", + "value": "48" + }, + { + "category": 4, + "name": "reconnect", + "value": "1" + }, + { + "category": 4, + "name": "enable-accurate-seek", + "value": "0" + }, + { + "category": 4, + "name": "mediacodec", + "value": "1" + }, + { + "category": 4, + "name": "mediacodec-auto-rotate", + "value": "1" + }, + { + "category": 4, + "name": "mediacodec-handle-resolution-change", + "value": "1" + }, + { + "category": 4, + "name": "mediacodec-hevc", + "value": "1" + }, + { + "category": 1, + "name": "dns_cache_timeout", + "value": "600000000" + } + ] + } +], +"proxy": [ + "file://TV/proxy.json" + ], + "rules": [ + { + "name": "cl", + "hosts": [ + "magnet" + ], + "regex": [ + "最 新", + "直 播", + "更 新" + ] + }, + { + "name": "火山嗅探", + "hosts": [ + "huoshan.com" + ], + "regex": [ + "item_id=" + ] + }, + { + "name": "抖音嗅探", + "hosts": [ + "douyin.com" + ], + "regex": [ + "is_play_url=" + ] + }, + { + "name": "农民嗅探", + "hosts": [ + "toutiaovod.com" + ], + "regex": [ + "video/tos/cn" + ] + }, + { + "name": "七新嗅探", + "hosts": [ + "api.52wyb.com" + ], + "regex": [ + "m3u8?pt=m3u8" + ] + }, + { + "name": "夜市", + "hosts": [ + "yeslivetv.com" + ], + "script": [ + "document.getElementsByClassName('vjs-big-play-button')[0].click()" + ] + }, + { + "name": "毛驴", + "hosts": [ + "www.maolvys.com" + ], + "script": [ + "document.getElementsByClassName('swal-button swal-button--confirm')[0].click()" + ] + }, + { + "name": "czzy", + "hosts": [ + "10086.cn" + ], + "regex": [ + "/storageWeb/servlet/downloadServlet" + ] + }, + { + "name": "bdys", + "hosts": [ + "bytetos.com", + "byteimg.com", + "bytednsdoc.com", + "pstatp.com" + ], + "regex": [ + "/tos-cn" + ], + "exclude": [ + ".m3u8" + ] + }, + { + "name": "bdys10", + "hosts": [ + "bdys10.com" + ], + "regex": [ + "/obj/" + ], + "exclude": [ + ".m3u8" + ] + } + ] +} diff --git a/FGBLH/Web鱼壳海豚.json b/FGBLH/Web鱼壳海豚.json index f8e0f21b..86383f69 100644 --- a/FGBLH/Web鱼壳海豚.json +++ b/FGBLH/Web鱼壳海豚.json @@ -802,6 +802,12 @@ "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/黑料网.py" }, + { + "key": "MoTV", + "name": "🐬MoTV.py|🔞[成人]", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/MoTV.py" + }, { "key": "真实人妻", "name": "🐬真实人妻.py|🔞[成人]", diff --git a/FGBLH/Web鱼壳海豚py.json b/FGBLH/Web鱼壳海豚py.json index b48db64e..ef3b6b58 100644 --- a/FGBLH/Web鱼壳海豚py.json +++ b/FGBLH/Web鱼壳海豚py.json @@ -545,6 +545,12 @@ "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/黑料网.py" }, + { + "key": "MoTV", + "name": "🐬MoTV.py|🔞[成人]", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/MoTV.py" + }, { "key": "真实人妻", "name": "🐬真实人妻.py|🔞[成人]", diff --git a/FGBLH/ok海豚.json b/FGBLH/ok海豚.json index ef50ac93..af7b066b 100644 --- a/FGBLH/ok海豚.json +++ b/FGBLH/ok海豚.json @@ -741,6 +741,12 @@ "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/蜜桃视频.py" }, + { + "key": "MoTV", + "name": "🐬MoTV.py|🔞", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/MoTV.py" + }, { "key": "真实人妻", "name": "🐬真实人妻.py|🔞", diff --git a/FGBLH/ok海豚py.json b/FGBLH/ok海豚py.json index 2c601411..17ff5b44 100644 --- a/FGBLH/ok海豚py.json +++ b/FGBLH/ok海豚py.json @@ -574,6 +574,12 @@ "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/蜜桃视频.py" }, + { + "key": "MoTV", + "name": "🐬MoTV.py|🔞", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/MoTV.py" + }, { "key": "真实人妻", "name": "🐬真实人妻.py|🔞", diff --git a/FGBLH/py/MoTV.py b/FGBLH/py/MoTV.py new file mode 100644 index 00000000..670b6e78 --- /dev/null +++ b/FGBLH/py/MoTV.py @@ -0,0 +1,196 @@ +# -*- coding: utf-8 -*- +import re +import urllib.parse +import requests + +try: + from base.spider import Spider as BaseSpider +except ImportError: + class BaseSpider: + pass + +class Spider(BaseSpider): + BASE_URL = "https://www.motv.app" + HEADERS = { + "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0 Safari/537.36", + "Referer": "https://www.motv.app/", + "Accept": "*/*" + } + + CATES = [ + {"type_name": "日本有碼", "type_id": "20"}, + {"type_name": "日本無碼", "type_id": "50"}, + {"type_name": "歐美风情", "type_id": "25"}, + {"type_name": "國產原創", "type_id": "41"}, + {"type_name": "動畫", "type_id": "29"}, + {"type_name": "水果AV", "type_id": "35"}, + {"type_name": "色情情燴", "type_id": "30"}, + {"type_name": "經典四級", "type_id": "47"}, + {"type_name": "鹹濕電台", "type_id": "169"} + ] + + def __init__(self): + self.session = requests.Session() + self.session.headers.update(self.HEADERS) + + def getName(self): + return "MOTV" + + def init(self, extend=""): + pass + + def isVideoFormat(self, url): + return False + + def manualVideoCheck(self): + return False + + def homeContent(self, filter): + return {"class": self.CATES, "filters": {}, "list": self._ajax_list("20", 1), "parse": 0, "jx": 0} + + def homeVideoContent(self): + return {"list": self._ajax_list("20", 1)} + + def categoryContent(self, tid, pg, filter, extend): + pg = int(pg or 1) + data = self._ajax_json(tid, pg) + return { + "list": self._json_list(data), + "page": pg, + "pagecount": self._to_int(data.get("pagecount") or data.get("page_count") or data.get("last_page"), 999), + "limit": self._to_int(data.get("limit"), 20), + "total": self._to_int(data.get("total"), 9999) + } + + def detailContent(self, ids): + vid = ids[0] if isinstance(ids, list) else ids + html = self._get(urllib.parse.urljoin(self.BASE_URL, "/voddetail/%s/" % vid)) + name = self._match(html, r"