.版本 2 .支持库 spec
.程序集 程序集1
.子程序 _启动子程序, 整数型, , 请在本子程序中放置动态链接库初始化代码
' kg_ (“说爱你”, 2) kg_mv (“DA546EF394077B690902C58F858CAAE1”) 返回 (0) ' 返回值被忽略。
.子程序 kg_mvhash, 文本型, , 获取高清MV .参数 mvid, 文本型 .局部变量 http, 类_POST数据类 .局部变量 ret, 文本型 .局部变量 URL, 文本型 .局部变量 data, 文本型 .局部变量 signature, 文本型
URL = “https://gateway.kugou.com/openapi/kmr/v1/mv?srcappid=2919&clientver=20000&clienttime=” + 时间_取现行时间戳 () + “&mid=b8d5700894e7d861d6859c2513d20808&uuid=b8d5700894e7d861d6859c2513d20808&dfid=4XSSn60jHVzu4IUffL0uxRKB&appid=1014&token=&userid=0” signature = kg_signature (URL, 真) URL = URL + “&signature=” + signature http.添加 (“User-Agent”, “Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36”) http.添加 (“Host”, “gateway.kugou.com”) http.添加 (“KG-TID”, “317”) data = “{” + #引号 + “fields” + #引号 + “:” + #引号 + “base,h264” + #引号 + “,” + #引号 + “data” + #引号 + “:[{” + #引号 + “entity_id” + #引号 + “:” + #引号 + “224394” + #引号 + “}]}” ret = 编码_Utf8到Ansi (网页_访问_对象 (URL, 1, data, , , http.获取协议头数据 ())) 调试输出 (ret) 返回 (ret)
.子程序 kg_mv .参数 hash, 文本型 .局部变量 http, 类_POST数据类 .局部变量 ret, 文本型 .局部变量 URL, 文本型
URL = “http://trackermvretry.kugou.com/interface/index?cmd=104&pid=2&ext=mp4&hash=” + 到小写 (hash) + “&jump=0&key=&backupdomain=1” http.添加 (“User-Agent”, “Android9-AndroidPhone-11239-18-0-SearchAll-wifi”) http.添加 (“Host”, “trackermvretry.kugou.com”) ret = 编码_Utf8到Ansi (网页_访问_对象 (URL, , , , , http.获取协议头数据 ())) 调试输出 (ret)
.子程序 kg_, , , 搜索 .参数 music_name, 文本型 .参数 type, 整数型, 可空, 搜索类型0=综合,1=歌曲,2=MV,默认0 .局部变量 url, 文本型 .局部变量 time, 文本型 .局部变量 signature, 文本型 .局部变量 http, 类_POST数据类 .局部变量 ret, 文本型
time = 时间_取现行时间戳 (真) .判断开始 (type = 0) url = “http://complexsearchretry.kugou.com/v8/search/complex?osversion=9&userid=0&area_code=1&appid=1005&phonemodel=MI%206X&cursor=1&token=&requestid=925ba516f22071755f5394f23820d25e_5&clienttime=” + time + “&iscorrection=1&uuid=d74ecbf808b72947c91d7b134823a705&apiver=20&keyword=” + 编码_URL编码 (music_name, 真, 真) + “&mid=” + 文本_取随机数字 (38) + “&dfid=-&clientver=11239&platform=AndroidFilter&tag=em” .判断 (type = 1) url = “http://complexsearchretry.kugou.com/v2/search/song?userid=0&area_code=1&appid=1005&dopicfull=1&page=1&token=&privilegefilter=0&requestid=925ba516f22071755f5394f23820d25e_1&pagesize=30&clienttime=” + time + “&sec_aggre=1&iscorrection=1&uuid=d74ecbf808b72947c91d7b134823a705&keyword=” + 编码_URL编码 (music_name, 真, 真) + “&mid=” + 文本_取随机数字 (38) + “&dfid=-&clientver=11239&platform=AndroidFilter&tag=em” .默认 url = “http://complexsearchretry.kugou.com/v1/search/mv?sorttype=0&userid=0&tagtype=%E5%85%A8%E9%83%A8&appid=1005&dopicfull=1&page=1&token=&requestid=925ba516f22071755f5394f23820d25e_1&pagesize=20&clienttime=” + time + “&iscorrection=1&uuid=d74ecbf808b72947c91d7b134823a705&keyword=” + 编码_URL编码 (music_name, 真, 真) + “&mid=” + 文本_取随机数字 (38) + “&dfid=-&tagaggr=1&clientver=11239&platform=AndroidFilter&tag=em” .判断结束 signature = kg_signature (url) url = url + “&signature=” + signature http.添加 (“User-Agent”, “Android9-AndroidPhone-11239-18-0-SearchAll-wifi”) http.添加 (“Host”, “complexsearchretry.kugou.com”) ret = 编码_Utf8到Ansi (网页_访问_对象 (url, , , , , http.获取协议头数据 ())) 调试输出 (ret) 置剪辑板文本 (ret)
.子程序 kg_signature, 文本型 .参数 url, 文本型 .参数 web, 逻辑型, 可空, 默认app .局部变量 text, 文本型 .局部变量 a, 整数型 .局部变量 arr, 文本型, , "0" .局部变量 i, 整数型 .局部变量 ret, 文本型 .局部变量 res, 文本型 .局部变量 js, 类_脚本组件
text = 文本_取右边 (url, “?”) a = 文本_分割文本 (text, “&”, , arr) .如果真 (a = 0) 返回 (“0”) .如果真结束 数组_排序 (arr) ret = “” .计次循环首 (a, i) ret = ret + arr [i] .计次循环尾 ()
.判断开始 (web = 假) res = 校验_取md5_文本 (“OIlwieks28dk2k092lksi2UIkp” + 编码_URL解码 (ret, 真) + “OIlwieks28dk2k092lksi2UIkp”, 真) .默认
调试输出 (js.执行 (#js)) res = “NVPh5oo715z5DIWAeQlhMDsWXXQV4hwt” + ret + “NVPh5oo715z5DIWAeQlhMDsWXXQV4hwt” res = js.运行 (“get_md5”, res) .判断结束 调试输出 (res) 返回 (res)
|