前言
我们前面有写fengmi影视/OK影视本地使用的python脚本,该类脚本优势在于不需要如PHP的运行环境,本地运行即可。
酷9也支持本地运行的脚本,如js脚本,今天分享如何通道deepseek来写一个酷9的js脚本。
JS脚本基本方法
酷9的基本方法:可以用ku9.request
请求接口,然后获取到节目地址:
function main(item) {
const id = item.id;
// 1. 请求数据接口
let apiUrl = `https://jzb123.huajiaedu.com/prod-api/iptv/getIptvList?liveType=0`;
let res = ku9.request(apiUrl);
// 2. 处理响应数据
// ...数据处理逻辑...
// 3. 返回播放地址
return JSON.stringify({
url: live_url
});
}
JS脚本示例
用比较简单的JZB接口作为示例,JZB的数据接口:
https://jzb123.huajiaedu.com/prod-api/iptv/getIptvList?liveType=0
响应内容:

实现方法:
请求接口,如果id = play_source_code
,则返回对应的play_source_url
Deepseek实现方法
提问内容:
数据接口apiUrl为https://jzb123.huajiaedu.com/prod-api/iptv/getIptvList?liveType=0的响应内容为:
{
"msg": "ok",
"code": "0",
"list": [
{
"play_source_name": "CCTV1",
"play_source_code": "cctv1",
"create_time": "2024-12-12 18:02:40",
"play_source_url": "https://tvpull.careryun.com/live/6affc23769b9b98ae2aef4a030603d8b.m3u8?txSecret=7b70612c1625e5c6305f2cf26822246c&txTime=683c4015",
"play_source_type": 1,
"device_type": 0,
"id": 578,
"source_id": 1,
"sort": 1,
"is_subscribe": 0,
"status": 0
},
{
"play_source_name": "东方卫视",
"play_source_code": "dfws",
"create_time": "2024-12-12 18:02:55",
"play_source_url": "https://tvpull.careryun.com/live/55a22c3494565b0b615ae40699e90bc4.m3u8?txSecret=ab827dad6dba08a1141514838a2e3faa&txTime=683c4015",
"play_source_type": 2,
"device_type": 0,
"id": 597,
"source_id": 1,
"sort": 1,
"is_subscribe": 0,
"status": 0
}
]
}
ku9.request是一种方法,类似fetch API get请求方法,传递id,如id=play_source_code的值,则返回对应的play_source_url,赋值给url
deepseek回答的代码:

回答为使用缓存机制来处理数据,可以不用缓存来实现,继续补充提问:

DeepSeek回答:

基本已获得答案,根据代码修改成我们需要的代码:
function main(item) {
const apiUrl = "https://jzb123.huajiaedu.com/prod-api/iptv/getIptvList?liveType=0";
const res = ku9.request(apiUrl);
if (res.code !== 200) {
return { error: `API请求失败(状态码 ${res.code})` };
}
try {
const data = JSON.parse(res.body);
if (data.code !== "0") {
return { error: `API错误:${data.msg || "未知错误"}` };
}
list = data.list;
target = list.find(ch => ch.play_source_code === item.id);
if (!target) {
return { error: `未找到ID为 ${item.id} 的频道` };
}
return {
url: target.play_source_url
};
} catch (e) {
return { error: "数据解析失败" };
}
}
测试,将脚本命名为如jzb.js,放到酷9
文件夹下的js
文件夹下,然后调用这个js即可,如
http://A/ku9/js/jzb.js?id=cctv1
该脚本播放会出现断流情况,可能和源本身有关。
源代码
关注公众号,后台私信【250601】获取js和列表,jzb.js文件放于js
文件夹下,jzb.txt放于LocalData
文件夹下即可。