上传文件至「lib」

This commit is contained in:
2026-08-12 18:17:56 +02:00
parent d68e13a952
commit 67c3e30be6
2 changed files with 3191 additions and 0 deletions
+263
View File
@@ -0,0 +1,263 @@
# -*- coding: utf-8 -*-
# by @嗷呜
# 基于原作者 @嗷呜 版本修改,仅可用于个人学习用途
from base.spider import Spider
from urllib.parse import urlparse, urlencode
import re,sys,time,json,urllib3,hashlib,datetime
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
sys.path.append('..')
class Spider(Spider):
headers,api,apisignkey,datasignkey = {'User-Agent': 'okhttp/4.12.0',},'', '' , ''
def init(self, extend=""):
ext = extend.rstrip()
if ext.startswith('http'):
self.api = ext.rstrip('/')
else:
arr = json.loads(ext)
self.api = arr['api'].rstrip('/')
self.apisignkey = arr.get('apisignkey', '')
if self.apisignkey:
self.datasignkey = arr.get('datasignkey', '6QQNUsP3PkD2ajJCPCY8')
def homeContent(self, filter):
if self.api.endswith('v1.vod'):
path = '/types'
if self.apisignkey and self.datasignkey:
path = self.datasign(path)
data = self.fetch(f"{self.api}{path}", headers=self.headers, verify=False).json()
data = data['data']
else:
data = self.fetch(f"{self.api}/nav?token=", headers=self.headers, verify=False).json()
keys = ["class", "area", "lang", "year", "letter", "by", "sort"]
filters = {}
classes = []
for item in data.get('list',data.get('data',[])):
has_non_empty_field = False
jsontype_extend = item["type_extend"]
classes.append({"type_name": item["type_name"], "type_id": item["type_id"]})
for key in keys:
if key in jsontype_extend and jsontype_extend[key].strip() != "":
has_non_empty_field = True
break
if has_non_empty_field:
filters[str(item["type_id"])] = []
for dkey in jsontype_extend:
if dkey in keys and jsontype_extend[dkey].strip() != "":
values = jsontype_extend[dkey].split(",")
value_array = [{"n": value.strip(), "v": value.strip()} for value in values if
value.strip() != ""]
filters[str(item["type_id"])].append({"key": dkey, "name": dkey, "value": value_array})
result = {"class": classes, "filters": filters}
return result
def homeVideoContent(self):
if self.api.endswith('v1.vod'):
path = '/vodPhbAll'
if self.apisignkey and self.datasignkey:
keytime = self.keytime()
path += self.datasign(f'?apikey={self.apikey()}&keytime={keytime}',keytime)
data = self.fetch(f"{self.api}{path}", headers=self.headers, verify=False).json()
data = data['data']
else:
data = self.fetch(f"{self.api}/index_video?token=", headers=self.headers, verify=False).json()
videos = []
if self.api.endswith('v1.vod'):
for item in data['list']: videos.extend(item['vod_list'])
elif 'list' in data:
for item in data['list']: videos.extend(item['vlist'])
elif 'data' in data:
for item in data['data']: videos.extend(item['vlist'])
return {'list': videos}
def categoryContent(self, tid, pg, filter, extend):
if self.api.endswith('v1.vod'):
path = f"?type={tid}&class={extend.get('class', '')}&lang={extend.get('lang', '')}&area={extend.get('area', '')}&year={extend.get('year', '')}&by=&page={pg}&limit=9"
if self.apisignkey and self.datasignkey:
keytime = self.keytime()
path = self.datasign(f'{path}&apikey={self.apikey()}&keytime={keytime}' ,keytime)
data = self.fetch(f"{self.api}{path}", headers=self.headers, verify=False).json()
data = data['data']
else:
params = {'tid': tid, 'class': extend.get('class', ''), 'area': extend.get('area', ''), 'lang': extend.get('lang', ''), 'year': extend.get('year', ''), 'limit': '18', 'pg': pg}
data = self.fetch(f"{self.api}/video", params=params, headers=self.headers, verify=False).json()
if 'data' in data:
data = {'list':data['data']}
return data
def searchContent(self, key, quick, pg="1"):
if self.api.endswith('v1.vod'):
path = f"?page={pg}&limit=10&wd={key}"
if self.apisignkey and self.datasignkey:
keytime = self.keytime()
path = self.datasign(f'{path}&apikey={self.apikey()}&keytime={keytime}',keytime)
else:
path = f"/search?text={key}&pg={pg}"
data = self.fetch(f"{self.api}{path}", headers=self.headers, verify=False).json()
data2 = data.get('list',data.get('data',[]))
if 'type' in data2:
for item in data2:
item.pop('type', None)
if not 'list' in data2:
data2 = {'list': data2, 'page': pg}
return data2
def detailContent(self, ids):
if self.api.endswith('v1.vod'):
path = f'/detail?vod_id={ids[0]}&rel_limit=10'
if self.apisignkey and self.datasignkey:
keytime = self.keytime()
path = self.datasign(f'{path}&apikey={self.apikey()}&keytime={keytime}',keytime)
data = self.fetch(f"{self.api}{path}", headers=self.headers, verify=False).json()
else:
data = self.fetch(f"{self.api}/video_detail?id={ids[0]}", headers=self.headers, verify=False).json()
data = data['data']
if 'vod_info' in data:
data = data['vod_info']
show = ''
vod_play_url = ''
if 'vod_url_with_player' in data:
for i in data['vod_url_with_player']:
show += i.get('name', '') + '$$$'
parse_api = i.get('parse_api','')
if parse_api and parse_api.startswith('http'):
url = i.get('url','')
if url:
url2 = '#'.join([i+ '@' + parse_api for i in url.split('#')])
vod_play_url += url2 + '$$$'
else:
vod_play_url += i.get('url','') + '$$$'
data.pop('vod_url_with_player')
if 'vod_play_list' in data:
for i in data['vod_play_list']:
parses = ''
player_info = i['player_info']
show += f"{player_info['show']}({i['from']})$$$"
parse = player_info.get('parse','')
parse2 = player_info.get('parse2','')
if 'parse' in player_info and parse.startswith('http'):
parses += parse + ','
if 'parse2' in player_info and parse2.startswith('http') and parse2 != parse:
parses += parse2
parses = parses.rstrip(',')
url = ''
for j in i['urls']:
if parse:
url += f"{j['name']}${j['url']}@{parses}#"
else:
url += f"{j['name']}${j['url']}#"
url = url.rstrip('#')
vod_play_url += url + '$$$'
if 'vod_play_list' in data:
data.pop('vod_play_list')
if 'rel_vods' in data:
data.pop('rel_vods')
if 'type' in data:
data.pop('type')
data['vod_play_from'] = show.rstrip('$$$')
data['vod_play_url'] = vod_play_url.rstrip('$$$')
return {'list': [data]}
def playerContent(self, flag, id, vipFlags):
video_pattern = re.compile(r'https?:\/\/.*\.(?:m3u8|mp4|flv)')
jx, url, ua = 0, '', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36'
if '@' in id:
rawurl, jxapi = id.split('@', 1)
if ',' in jxapi:
jxapis = jxapi.split(',', 1)
else:
jxapis = [jxapi]
for jxapi_ in jxapis:
try:
res = self.fetch(f"{jxapi_}{rawurl}", headers=self.headers, timeout=10, verify=False).json()
url = res.get('url', '')
if url.startswith('http'):
jxua = res.get('ua')
if jxua:
ua = jxua
except Exception:
url = ''
continue
if url.startswith('http'):
jx = 0
else:
url = rawurl
jx = 0 if video_pattern.match(rawurl) else 1
else:
url = id
jx = 0 if video_pattern.match(id) else 1
if url.startswith('NBY'):
jx, url = 0, ''
return {'jx': jx, 'parse': 0, 'url': url, 'header': {'User-Agent': ua}}
def keytime(self):
return str(int(datetime.datetime.now().timestamp()))
def md5(self, str):
hash_obj = hashlib.md5()
hash_obj.update(str.encode('utf-8'))
return hash_obj.hexdigest()
def apikey(self):
date = datetime.datetime.now()
year = str(date.year)
hour = str(date.hour)
minute = str(date.minute)
if len(hour) < 2:
hour = "0" + hour
if len(minute) < 2:
minute = "0" + minute
str_value = self.apisignkey
sign_str = f"{year}:{hour}:{year}:{minute}:{str_value}"
md5_hash = self.md5(sign_str)
return md5_hash
def datasign(self, url='', timestamp=''):
parsed_url = urlparse(url)
query_params = self._parse_query_params(parsed_url.query)
if not timestamp:
timestamp = str(time.time())
query_params["timestamp"] = timestamp
sorted_params = sorted(query_params.items(), key=lambda x: x[0])
sign = self._generate_signature(sorted_params)
query_params["datasign"] = sign
new_query = urlencode(query_params)
new_url = parsed_url._replace(query=new_query).geturl()
return new_url
def _parse_query_params(self, query_str):
params = {}
if not query_str:
return params
for param in query_str.split('&'):
if '=' not in param:
continue
key, value = param.split('=', 1)
if value:
params[key] = value
return params
def _generate_signature(self, sorted_params):
param_str = '&'.join([f"{k}={v}" for k, v in sorted_params])
raw_sign_str = f"{param_str}{self.datasignkey}"
md5_hash = hashlib.md5(raw_sign_str.encode('utf-8')).hexdigest()
return md5_hash
def localProxy(self, param):
pass
def getName(self):
pass
def isVideoFormat(self, url):
pass
def manualVideoCheck(self):
pass
def destroy(self):
pass
+2928
View File
@@ -0,0 +1,2928 @@
{
"class": [
{
"type_name": "沙雕动画",
"type_id": "沙雕动画"
},
{
"type_name": "演唱会",
"type_id": "演唱会4K"
},
{
"type_name": "歌曲",
"type_id": "热歌"
},
{
"type_name": "音乐",
"type_id": "纯音乐"
},
{
"type_name": "舞蹈",
"type_id": "舞蹈"
},
{
"type_name": "体育",
"type_id": "体育"
},
{
"type_name": "戏曲",
"type_id": "戏曲"
},
{
"type_name": "旅游",
"type_id": "旅游"
},
{
"type_name": "风景",
"type_id": "风景4K"
},
{
"type_name": "美食",
"type_id": "美食超清"
},
{
"type_name": "搞笑",
"type_id": "搞笑"
},
{
"type_name": "儿童",
"type_id": "儿童"
},
{
"type_name": "纪录",
"type_id": "纪录片超清"
},
{
"type_name": "综艺",
"type_id": "综艺大全"
},
{
"type_name": "广场舞",
"type_id": "广场舞"
},
{
"type_name": "太极拳",
"type_id": "太极拳"
},
{
"type_name": "白噪音",
"type_id": "白噪音超清"
},
{
"type_name": "软件教程",
"type_id": "软件教程"
},
{
"type_name": "动物自然",
"type_id": "动物世界超清"
},
{
"type_name": "相声小品",
"type_id": "相声小品"
},
{
"type_name": "旅行探险",
"type_id": "旅行探险"
}
],
"filters": {
"沙雕动画": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"演唱会4K": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [
{
"n": "全部",
"v": "演唱会4K"
},
{
"n": "演唱会合集",
"v": "演唱会合集"
},
{
"n": "红馆演唱会",
"v": "红馆演唱会"
},
{
"n": "Beyond",
"v": "Beyond演唱会"
},
{
"n": "张学友",
"v": "张学友演唱会"
},
{
"n": "刘德华",
"v": "刘德华演唱会"
},
{
"n": "谭咏麟",
"v": "谭咏麟演唱会"
},
{
"n": "李克勤",
"v": "李克勤演唱会"
},
{
"n": "陈百强",
"v": "陈百强演唱会"
},
{
"n": "陈奕迅",
"v": "陈奕迅演唱会"
},
{
"n": "伍佰",
"v": "伍佰演唱会"
},
{
"n": "SHE",
"v": "SHE演唱会"
},
{
"n": "陈小春",
"v": "陈小春演唱会"
},
{
"n": "草蜢",
"v": "草蜢演唱会"
},
{
"n": "陈慧娴",
"v": "陈慧娴演唱会"
},
{
"n": "刀郎",
"v": "刀郎演唱会"
},
{
"n": "邓紫棋",
"v": "邓紫棋演唱会"
},
{
"n": "凤凰传奇",
"v": "凤凰传奇演唱会"
},
{
"n": "林子祥",
"v": "林子祥演唱会"
},
{
"n": "李宗盛",
"v": "李宗盛演唱会"
},
{
"n": "罗大佑",
"v": "罗大佑演唱会"
},
{
"n": "梅艳芳",
"v": "梅艳芳演唱会"
},
{
"n": "迈克尔杰克逊",
"v": "迈克尔杰克逊演唱会"
},
{
"n": "容祖儿",
"v": "容祖儿演唱会"
},
{
"n": "任贤齐",
"v": "任贤齐演唱会"
},
{
"n": "王心凌",
"v": "王心凌演唱会"
},
{
"n": "张韶涵",
"v": "张韶涵演唱会"
},
{
"n": "张国荣",
"v": "张国荣演唱会"
},
{
"n": "周慧敏",
"v": "周慧敏演唱会"
},
{
"n": "卓依婷",
"v": "卓依婷演唱会4K"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"热歌": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [
{
"n": "全部",
"v": "经典无损音乐"
},
{
"n": "内地",
"v": "内地歌曲"
},
{
"n": "香港",
"v": "香港歌曲"
},
{
"n": "台湾",
"v": "台湾歌曲"
},
{
"n": "粤语",
"v": "粤语歌曲"
},
{
"n": "国语",
"v": "国语歌曲"
},
{
"n": "闽南",
"v": "闽南歌曲"
},
{
"n": "老歌",
"v": "怀旧老歌"
},
{
"n": "热榜",
"v": "2023年热们歌曲"
},
{
"n": "经典",
"v": "经典老歌"
},
{
"n": "古风",
"v": "古风歌曲"
},
{
"n": "舞曲",
"v": "DJ歌曲"
},
{
"n": "网络",
"v": "网红歌曲"
},
{
"n": "抖音",
"v": "抖音热歌"
},
{
"n": "快手",
"v": "快手热歌"
},
{
"n": "对唱",
"v": "情歌对唱"
},
{
"n": "迪斯科",
"v": "迪斯科"
},
{
"n": "70年代",
"v": "70年代歌曲"
},
{
"n": "80年代",
"v": "80年代歌曲"
},
{
"n": "90年代",
"v": "90年代歌曲"
},
{
"n": "超清MV",
"v": "超清MV"
},
{
"n": "酒廊情歌",
"v": "酒廊情歌"
},
{
"n": "山地情歌",
"v": "山地情歌"
},
{
"n": "卓依婷",
"v": "卓依婷"
},
{
"n": "新春",
"v": "新年歌曲"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"纯音乐": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [
{
"n": "全部",
"v": "纯音乐"
},
{
"n": "钢琴",
"v": "钢琴曲"
},
{
"n": "小提琴",
"v": "小提音乐"
},
{
"n": "手风琴",
"v": "手风音乐"
},
{
"n": "二胡",
"v": "二胡音乐"
},
{
"n": "古筝",
"v": "古筝音乐"
},
{
"n": "笛子",
"v": "笛子音乐"
},
{
"n": "琵琶",
"v": "琵琶音乐"
},
{
"n": "古琴",
"v": "古琴音乐"
},
{
"n": "编钟",
"v": "编钟音乐"
},
{
"n": "协奏曲",
"v": "协奏曲"
},
{
"n": "古风音乐",
"v": "古风纯音乐"
},
{
"n": "背景音乐",
"v": "背景音乐"
},
{
"n": "助眠音乐",
"v": "助眠音乐"
},
{
"n": "胎教音乐",
"v": "胎教音乐"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"舞蹈": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [
{
"n": "全部",
"v": "舞蹈"
},
{
"n": "古典舞",
"v": "古典舞"
},
{
"n": "芭蕾舞",
"v": "芭蕾舞"
},
{
"n": "民族舞",
"v": "民族舞"
},
{
"n": "现代舞",
"v": "现代舞"
},
{
"n": "踢踏舞",
"v": "踢踏舞"
},
{
"n": "爵士舞",
"v": "爵士舞"
},
{
"n": "拉丁舞",
"v": "拉丁舞"
},
{
"n": "摩登舞",
"v": "摩登舞"
},
{
"n": "街舞",
"v": "街舞"
},
{
"n": "广场舞",
"v": "广场舞"
},
{
"n": "宅舞",
"v": "宅舞"
},
{
"n": "肚皮舞",
"v": "肚皮舞"
},
{
"n": "钢管舞",
"v": "钢管舞"
},
{
"n": "英歌舞",
"v": "英歌舞"
},
{
"n": "劲舞",
"v": "热舞劲舞"
},
{
"n": "独舞",
"v": "独舞"
},
{
"n": "群舞",
"v": "群舞"
},
{
"n": "组舞",
"v": "组舞"
},
{
"n": "舞剧",
"v": "舞剧"
},
{
"n": "国风舞蹈",
"v": "国风舞蹈"
},
{
"n": "女团热舞",
"v": "女团热舞"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"体育": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [
{
"n": "全部",
"v": "体育赛事"
},
{
"n": "NBA",
"v": "NBA"
},
{
"n": "世界杯",
"v": "世界杯"
},
{
"n": "足球",
"v": "足球赛"
},
{
"n": "赛艇",
"v": "赛艇"
},
{
"n": "马拉松",
"v": "马拉松"
},
{
"n": "拳击",
"v": "拳击"
},
{
"n": "柔道",
"v": "柔道"
},
{
"n": "跆拳道",
"v": "跆拳道"
},
{
"n": "摔跤",
"v": "摔跤"
},
{
"n": "高尔夫",
"v": "高尔夫"
},
{
"n": "WWE",
"v": "WWE"
},
{
"n": "奥运会",
"v": "奥运会"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"戏曲": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [
{
"n": "全部",
"v": "戏曲4K"
},
{
"n": "B梆子腔",
"v": "梆子腔戏曲4K"
},
{
"n": "C采茶戏",
"v": "采茶戏戏曲4K"
},
{
"n": "C潮剧",
"v": "潮剧戏曲4K"
},
{
"n": "C彩调",
"v": "彩调戏曲4K"
},
{
"n": "C川剧",
"v": "川剧戏曲4K"
},
{
"n": "D滇剧",
"v": "滇剧戏曲4K"
},
{
"n": "D傣剧",
"v": "傣剧戏曲4K"
},
{
"n": "E二人台",
"v": "二人台戏曲4K"
},
{
"n": "G高腔",
"v": "高腔戏曲4K"
},
{
"n": "G高甲戏",
"v": "高甲戏戏曲4K"
},
{
"n": "G赣剧",
"v": "赣剧戏曲4K"
},
{
"n": "G桂剧",
"v": "桂剧戏曲4K"
},
{
"n": "H黄梅戏",
"v": "黄梅戏戏曲4K"
},
{
"n": "H河北梆子",
"v": "河北梆子戏曲4K"
},
{
"n": "H河南曲剧",
"v": "河南曲剧戏曲4K"
},
{
"n": "H淮剧",
"v": "淮剧戏曲4K"
},
{
"n": "H沪剧",
"v": "沪剧戏曲4K"
},
{
"n": "H滑稽戏",
"v": "滑稽戏戏曲4K"
},
{
"n": "H徽剧",
"v": "徽剧4K"
},
{
"n": "H汉剧",
"v": "汉剧戏曲4K"
},
{
"n": "H湖南花鼓戏",
"v": "湖南花鼓戏戏曲4K"
},
{
"n": "J京剧",
"v": "京剧戏曲4K"
},
{
"n": "J晋剧",
"v": "晋剧戏曲4K"
},
{
"n": "J吉剧",
"v": "吉剧戏曲4K"
},
{
"n": "K昆曲",
"v": "昆曲戏曲4K"
},
{
"n": "L梨园戏",
"v": "梨园戏戏曲4K"
},
{
"n": "L龙江剧",
"v": "龙江剧戏曲4K"
},
{
"n": "M闽剧",
"v": "闽剧戏曲4K"
},
{
"n": "P评剧",
"v": "评剧戏曲4K"
},
{
"n": "P蒲剧",
"v": "蒲剧戏曲4K"
},
{
"n": "P皮影戏",
"v": "皮影戏戏曲4K"
},
{
"n": "P莆仙戏",
"v": "莆仙戏戏曲4K"
},
{
"n": "Q黔剧",
"v": "黔剧戏曲4K"
},
{
"n": "Q祁剧",
"v": "祁剧戏曲4K"
},
{
"n": "Q秦腔",
"v": "秦腔戏曲4K"
},
{
"n": "S上党梆子",
"v": "上党梆子戏曲4K"
},
{
"n": "S山东梆子",
"v": "山东梆子戏曲4K"
},
{
"n": "S绍剧",
"v": "绍剧戏曲4K"
},
{
"n": "W武安平调",
"v": "武安平调戏曲4K"
},
{
"n": "W婺剧",
"v": "婺剧戏曲4K"
},
{
"n": "X湘剧",
"v": "湘剧戏曲4K"
},
{
"n": "Y越剧",
"v": "越剧戏曲4K"
},
{
"n": "Y豫剧",
"v": "豫剧戏曲4K"
},
{
"n": "Y雁剧",
"v": "雁剧戏曲4K"
},
{
"n": "Y越调",
"v": "越调戏曲4K"
},
{
"n": "Y粤剧",
"v": "粤剧戏曲4K"
},
{
"n": "Z壮剧",
"v": "壮剧戏曲4K"
},
{
"n": "Z藏剧",
"v": "藏剧戏曲4K"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"旅游": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [
{
"n": "全部",
"v": "旅游"
},
{
"n": "A澳门",
"v": "澳门旅游"
},
{
"n": "A安徽",
"v": "安徽旅游"
},
{
"n": "B布达拉宫",
"v": "布达拉宫旅游"
},
{
"n": "B北京",
"v": "北京旅游"
},
{
"n": "C重庆",
"v": "重庆旅游"
},
{
"n": "C草原",
"v": "草原旅游"
},
{
"n": "D大海",
"v": "大海旅游"
},
{
"n": "F福建",
"v": "福建旅游"
},
{
"n": "G广东",
"v": "广东旅游"
},
{
"n": "G广西",
"v": "广西旅游"
},
{
"n": "G贵州",
"v": "贵州旅游"
},
{
"n": "G甘肃",
"v": "甘肃旅游"
},
{
"n": "H海南",
"v": "海南旅游"
},
{
"n": "H河北",
"v": "河北旅游"
},
{
"n": "H河南",
"v": "河南旅游"
},
{
"n": "H湖北",
"v": "湖北旅游"
},
{
"n": "H湖南",
"v": "湖南旅游"
},
{
"n": "H黑龙江",
"v": "黑龙江旅游"
},
{
"n": "J吉林",
"v": "吉林旅游"
},
{
"n": "J江苏",
"v": "江苏旅游"
},
{
"n": "J江西",
"v": "江西旅游"
},
{
"n": "L辽宁",
"v": "辽宁旅游"
},
{
"n": "M民宿",
"v": "民宿旅游"
},
{
"n": "N内蒙古",
"v": "内蒙古旅游"
},
{
"n": "N宁夏",
"v": "宁夏旅游"
},
{
"n": "Q青海",
"v": "青海旅游"
},
{
"n": "S上海",
"v": "上海旅游"
},
{
"n": "S陕西",
"v": "陕西旅游"
},
{
"n": "S四川",
"v": "四川旅游"
},
{
"n": "S山西",
"v": "山西旅游"
},
{
"n": "S山东",
"v": "山东旅游"
},
{
"n": "T天津",
"v": "天津旅游"
},
{
"n": "T台湾",
"v": "台湾旅游"
},
{
"n": "T天空",
"v": "天空旅游"
},
{
"n": "X西湖",
"v": "西湖旅游"
},
{
"n": "X西藏",
"v": "西藏旅游"
},
{
"n": "X新疆",
"v": "新疆旅游"
},
{
"n": "X香港",
"v": "香港旅游"
},
{
"n": "Y云南",
"v": "云南旅游"
},
{
"n": "Z浙江",
"v": "浙江旅游"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"风景4K": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [
{
"n": "全部",
"v": "风景4K"
},
{
"n": "A澳门",
"v": "澳门风景4K"
},
{
"n": "A安徽",
"v": "安徽风景4K"
},
{
"n": "B布达拉宫",
"v": "布达拉宫风景4K"
},
{
"n": "B北京",
"v": "北京风景4K"
},
{
"n": "C重庆",
"v": "重庆风景4K"
},
{
"n": "C草原",
"v": "草原风景4K"
},
{
"n": "D大海",
"v": "大海风景4K"
},
{
"n": "F福建",
"v": "福建风景4K"
},
{
"n": "G广东",
"v": "广东风景4K"
},
{
"n": "G广西",
"v": "广西风景4K"
},
{
"n": "G贵州",
"v": "贵州风景4K"
},
{
"n": "G甘肃",
"v": "甘肃风景4K"
},
{
"n": "H海南",
"v": "海南风景4K"
},
{
"n": "H河北",
"v": "河北风景4K"
},
{
"n": "H河南",
"v": "河南风景4K"
},
{
"n": "H湖北",
"v": "湖北风景4K"
},
{
"n": "H湖南",
"v": "湖南风景4K"
},
{
"n": "H黑龙江",
"v": "黑龙江风景4K"
},
{
"n": "J吉林",
"v": "吉林风景4K"
},
{
"n": "J江苏",
"v": "江苏风景4K"
},
{
"n": "J江西",
"v": "江西风景4K"
},
{
"n": "L辽宁",
"v": "辽宁风景4K"
},
{
"n": "L洛阳",
"v": "洛阳风景4K"
},
{
"n": "M民宿",
"v": "民宿风景4K"
},
{
"n": "N南京",
"v": "南京风景4K"
},
{
"n": "N内蒙古",
"v": "内蒙古风景4K"
},
{
"n": "N宁夏",
"v": "宁夏风景4K"
},
{
"n": "Q青海",
"v": "青海风景4K"
},
{
"n": "S上海",
"v": "上海风景4K"
},
{
"n": "S陕西",
"v": "陕西风景4K"
},
{
"n": "S四川",
"v": "四川风景4K"
},
{
"n": "S山西",
"v": "山西风景4K"
},
{
"n": "S山东",
"v": "山东风景4K"
},
{
"n": "S苏州",
"v": "苏州风景4K"
},
{
"n": "T天津",
"v": "天津风景4K"
},
{
"n": "T台湾",
"v": "台湾风景4K"
},
{
"n": "T天空",
"v": "天空风景4K"
},
{
"n": "X西安",
"v": "西安风景4K"
},
{
"n": "X西湖",
"v": "西湖风景4K"
},
{
"n": "X西藏",
"v": "西藏风景4K"
},
{
"n": "X新疆",
"v": "新疆风景4K"
},
{
"n": "X香港",
"v": "香港风景4K"
},
{
"n": "Y云南",
"v": "云南风景4K"
},
{
"n": "Z浙江",
"v": "浙江风景4K"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"美食超清": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [
{
"n": "全部",
"v": "美食超清"
},
{
"n": "舌尖上的中国",
"v": "舌尖上的中国超清"
},
{
"n": "老字号",
"v": "老字号美食超清"
},
{
"n": "家常菜",
"v": "家常菜美食超清"
},
{
"n": "香港美食探店",
"v": "香港美食探店超清"
},
{
"n": "澳门美食探店",
"v": "澳门美食探店超清"
},
{
"n": "上海美食探店",
"v": "上海美食探店超清"
},
{
"n": "北京美食探店",
"v": "北京美食探店超清"
},
{
"n": "重庆美食探店",
"v": "重庆美食探店超清"
},
{
"n": "南京美食探店",
"v": "南京美食探店超清"
},
{
"n": "广州美食探店",
"v": "广州美食探店超清"
},
{
"n": "杭州美食探店",
"v": "杭州美食探店超清"
},
{
"n": "成都美食探店",
"v": "成都美食探店超清"
},
{
"n": "苏州美食探店",
"v": "苏州美食探店超清"
},
{
"n": "武汉美食探店",
"v": "武汉美食探店超清"
},
{
"n": "台湾美食探店",
"v": "台湾美食探店超清"
},
{
"n": "川菜",
"v": "川菜美食超清"
},
{
"n": "豫菜",
"v": "豫菜美食超清"
},
{
"n": "淮扬菜",
"v": "淮扬菜美食超清"
},
{
"n": "湘菜",
"v": "湘菜美食超清"
},
{
"n": "鲁菜",
"v": "鲁菜美食超清"
},
{
"n": "粤菜",
"v": "粤菜美食超清"
},
{
"n": "潮菜",
"v": "潮菜美食超清"
},
{
"n": "浙菜",
"v": "浙菜美食超清"
},
{
"n": "徽菜",
"v": "徽菜美食超清"
},
{
"n": "闽菜",
"v": "闽菜美食超清"
},
{
"n": "东北菜",
"v": "东北菜美食超清"
},
{
"n": "客家菜",
"v": "客家菜美食超清"
},
{
"n": "苏菜",
"v": "苏菜美食超清"
},
{
"n": "火锅",
"v": "火锅"
},
{
"n": "面食",
"v": "面食"
},
{
"n": "炒菜",
"v": "炒菜"
},
{
"n": "点心",
"v": "点心"
},
{
"n": "日料",
"v": "日料"
},
{
"n": "小吃",
"v": "小吃"
},
{
"n": "素食",
"v": "素食"
},
{
"n": "蒸菜",
"v": "蒸菜"
},
{
"n": "凉菜",
"v": "凉菜"
},
{
"n": "早餐",
"v": "早餐"
},
{
"n": "披萨",
"v": "披萨"
},
{
"n": "烤鱼",
"v": "烤鱼"
},
{
"n": "海鲜",
"v": "海鲜美食超清"
},
{
"n": "汉堡",
"v": "汉堡"
},
{
"n": "韩国菜",
"v": "韩国菜"
},
{
"n": "泰国菜",
"v": "泰国菜"
},
{
"n": "穆斯林菜",
"v": "穆斯林菜"
},
{
"n": "法国菜",
"v": "法国菜"
},
{
"n": "意大利菜",
"v": "意大利菜"
},
{
"n": "西班牙菜",
"v": "西班牙菜"
},
{
"n": "土耳其菜",
"v": "土耳其菜系"
},
{
"n": "阿拉伯菜",
"v": "阿拉伯菜"
},
{
"n": "德国菜",
"v": "德国菜"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"搞笑": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [
{
"n": "全部",
"v": "搞笑"
},
{
"n": "搞笑配音",
"v": "搞笑配音"
},
{
"n": "搞笑电影",
"v": "搞笑电影"
},
{
"n": "搞笑综艺",
"v": "搞笑综艺"
},
{
"n": "鬼畜电影",
"v": "鬼畜电影"
},
{
"n": "搞笑动画",
"v": "搞笑动画"
},
{
"n": "搞笑番",
"v": "搞笑番"
},
{
"n": "十万个冷笑话",
"v": "十万个冷笑话"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"儿童": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [
{
"n": "全部",
"v": "儿童"
},
{
"n": "教育",
"v": "儿童早教"
},
{
"n": "歌曲",
"v": "贝瓦儿歌"
},
{
"n": "舞蹈",
"v": "儿童舞蹈"
},
{
"n": "成语故事",
"v": "儿童成语故事"
},
{
"n": "安全教育",
"v": "儿童安全教育"
},
{
"n": "睡前故事",
"v": "儿童睡前故事"
},
{
"n": "贝乐虎",
"v": "贝乐虎"
},
{
"n": "宝宝巴士",
"v": "宝宝巴士"
},
{
"n": "儿童好声音",
"v": "儿童好声音"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"纪录片超清": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"太极拳": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [
{
"n": "全部",
"v": "太极拳"
},
{
"n": "邱慧芳",
"v": "太极拳邱慧芳"
},
{
"n": "陈氏",
"v": "太极拳陈氏"
},
{
"n": "武当",
"v": "太极拳武当"
},
{
"n": "二十四式",
"v": "太极拳二十四式"
},
{
"n": "三十六式",
"v": "太极拳三十六式"
},
{
"n": "五禽戏",
"v": "五禽戏"
},
{
"n": "八段锦",
"v": "八段锦"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"综艺大全": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [
{
"n": "全部",
"v": "综艺汇聚"
},
{
"n": "诗词大会",
"v": "诗词大会"
},
{
"n": "典籍里的中国",
"v": "典籍里的中国"
},
{
"n": "我是歌手",
"v": "我是歌手"
},
{
"n": "中国梦想秀",
"v": "中国梦想秀"
},
{
"n": "非诚勿扰",
"v": "非诚勿扰"
},
{
"n": "王牌对王牌",
"v": "王牌对王牌"
},
{
"n": "极限挑战",
"v": "极限挑战"
},
{
"n": "中国好声音",
"v": "中国好声音"
},
{
"n": "中国新声代",
"v": "中国新声代"
},
{
"n": "军情直播间",
"v": "军情直播间"
},
{
"n": "军情观察室",
"v": "军情观察室"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"广场舞": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"白噪音超清": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [
{
"n": "全部",
"v": "白噪音4K"
},
{
"n": "窗白噪音",
"v": "窗白噪音4K"
},
{
"n": "环境白噪音",
"v": "环境白噪音4K"
},
{
"n": "自然白噪音",
"v": "自然白噪音4K"
},
{
"n": "助眠白噪音",
"v": "助眠白噪音4K"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"软件教程": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [
{
"n": "全部",
"v": "软件教程"
},
{
"n": "Windows",
"v": "Windows"
},
{
"n": "MT管理器",
"v": "MT管理器"
},
{
"n": "NP管理器",
"v": "NP管理器"
},
{
"n": "mixplorer",
"v": "mixplorer"
},
{
"n": "脱壳",
"v": "脱壳"
},
{
"n": "爬虫",
"v": "爬虫"
},
{
"n": "json&jar",
"v": "json&jar"
},
{
"n": "网盘挂载",
"v": "网盘挂载"
},
{
"n": "alist+WebDav",
"v": "alist+WebDav"
},
{
"n": "TVBox",
"v": "TVBox"
},
{
"n": "EXCEL",
"v": "EXCEL教程"
},
{
"n": "Git入门到精通",
"v": "Git入门到精通"
},
{
"n": "java",
"v": "java教程"
},
{
"n": "phyton",
"v": "phyton教程"
},
{
"n": "xml",
"v": "xml教程"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"动物世界超清": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [
{
"n": "全部",
"v": "地球自然"
},
{
"n": "熊猫",
"v": "国宝熊猫"
},
{
"n": "大自然",
"v": "大自然"
},
{
"n": "地球自然",
"v": "地球自然"
},
{
"n": "宇宙探索",
"v": "宇宙探索"
},
{
"n": "探索发现",
"v": "探索发现"
},
{
"n": "动物世界",
"v": "动物世界超清"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"相声小品": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [
{
"n": "全部",
"v": "相声小品"
},
{
"n": "C陈佩斯",
"v": "陈佩斯小品4K"
},
{
"n": "C春晚小品",
"v": "春晚小品4K"
},
{
"n": "C曹云金",
"v": "曹云金相声4K"
},
{
"n": "D单口相声",
"v": "单口相声4K"
},
{
"n": "D德云社",
"v": "德云社小品4K"
},
{
"n": "E二人转",
"v": "二人转4K"
},
{
"n": "F冯巩",
"v": "冯巩小品4K"
},
{
"n": "G郭德纲",
"v": "郭德纲相声4K"
},
{
"n": "G郭冬临",
"v": "郭冬临小品4K"
},
{
"n": "G郭达",
"v": "郭达小品4K"
},
{
"n": "K开心麻花",
"v": "开心麻花小品4K"
},
{
"n": "P评书",
"v": "评书4K"
},
{
"n": "P潘长江",
"v": "潘长江小品4K"
},
{
"n": "Q青曲社",
"v": "青曲社相声4K"
},
{
"n": "Q群口相声",
"v": "群口相声4K"
},
{
"n": "S宋小宝",
"v": "宋小宝小品4K"
},
{
"n": "W文松",
"v": "文松小品4K"
},
{
"n": "X小曲",
"v": "小曲相声4K"
},
{
"n": "X喜剧综艺",
"v": "喜剧综艺4K"
},
{
"n": "Y严顺开",
"v": "严顺开小品4K"
},
{
"n": "Y岳云鹏",
"v": "岳云鹏相声小品4K"
},
{
"n": "Z赵本山",
"v": "赵本山小品4K"
},
{
"n": "Z赵丽蓉",
"v": "赵丽蓉小品4K"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
],
"旅行探险": [
{
"key": "order",
"name": "排序",
"value": [
{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [
{
"n": "全部",
"v": "旅行探险"
},
{
"n": "摩旅",
"v": "摩托车旅游"
},
{
"n": "骑行",
"v": "骑行旅游"
},
{
"n": "徒步旅游",
"v": "徒步旅游"
},
{
"n": "自驾旅游",
"v": "自驾旅游"
},
{
"n": "洞穴探险",
"v": "洞穴探险"
},
{
"n": "荒野求生",
"v": "荒野求生"
},
{
"n": "凶宅探险",
"v": "凶宅探险"
},
{
"n": "灵异探险",
"v": "灵异探险"
},
{
"n": "户外攀岩",
"v": "户外攀岩"
},
{
"n": "高空攀爬",
"v": "高空攀爬"
},
{
"n": "潜水探险",
"v": "潜水探险"
},
{
"n": "翼装飞行",
"v": "翼装飞行"
},
{
"n": "极限运动",
"v": "极限运动"
},
{
"n": "速降",
"v": "速降"
},
{
"n": "高空跑酷",
"v": "高空跑酷"
},
{
"n": "冲浪",
"v": "冲浪"
}
]
},
{
"key": "duration",
"name": "时长",
"value": [
{
"n": "全部",
"v": "0"
},
{
"n": "60分钟以上",
"v": "4"
},
{
"n": "30~60分钟",
"v": "3"
},
{
"n": "10~30分钟",
"v": "2"
},
{
"n": "10分钟以下",
"v": "1"
}
]
}
]
}
}