TVBox 中文文档 下载 App

JS 爬虫源详解:为什么它最灵活但也最容易失效

什么是 JS 爬虫源

JS 爬虫源本质上是一段 JavaScript 代码,而不是 JSON 数据或 m3u 列表。TVBox 内置了 JavaScript 引擎,运行这段代码来动态爬取目标网站、从 HTML 里提取分类链接、详情页信息和播放地址。

举个简化的例子:一个 JS 爬虫源可能包含这样的逻辑:

// 1. 请求目标网站的首页
const html = request('https://example.com');
// 2. 用正则或 DOM 解析提取分类链接
const categories = parseCategories(html);
// 3. 每个分类再请求一次,提取剧集列表
const dramas = categories.map(c => requestAndParse(c.url));
// 4. 返回统一格式的 JSON
return { sources: dramas };

TVBox 拿到这段代码,在自己的 JS 引擎里跑完,把返回的 JSON 当普通接口源处理。

为什么要做 JS 爬虫源

有些网站不提供开放的 JSON API——它们的分类和剧集列表只在 HTML 页面里。TVBox 想支持这些网站,就需要动态去「爬」页面、从 HTML 结构里提取数据。JS 爬虫源就是为这种场景设计的。

常见需要爬虫源才能覆盖的网站:

优点

缺点

和普通接口源的使用差异

从用户角度看,添加 JS 爬虫源和添加普通 JSON 接口源的操作是完全一样的——都是填一个 URL,保存,浏览。TVBox 自动识别这是 JS 脚本还是 JSON 数据,用对应的引擎处理。你不需要关心底层是爬虫还是接口。

怎么判断一个源是爬虫还是接口

不用判断——TVBox 会自动处理。但如果你在浏览器里打开一个接口地址,看到的不是 JSON 文本而是一行行 JavaScript 代码,那这个就是爬虫源。

社区生态

JS 爬虫源是 TVBox 社区最活跃的开发方向——开发者不停地为新的影视站写爬虫脚本,也在跟进维护旧脚本。一个活跃的配置通常会包含 1~2 个稳定的 JSON 接口源 + 2~3 个不同网站的 JS 爬虫源 + 1 个 m3u 直播源,兼顾稳定性和覆盖范围。

下一页

数据源这一章到此结束。配好源了,接下来正式进入使用篇——从分类浏览开始。