博客

作者 javinfo team

并不存在的 JavDB API

JavDB 没有公开 API。GitHub 上的每一个 javdb api 都是会腐烂的抓取工具。这里讲清楚人们实际在用什么、为什么它会坏,以及一个托管的替代方案。

并不存在 JavDB API。JavDB 从未发布过。搜索 “javdb api”,你会得到一堆顶着这个名字的社区抓取工具,每一个都在解析明天就可能失效的 HTML。

这就是整个问题,一句话说完。不过还是值得把外面实际有的东西走一遍,因为你会全都碰上。

“javdb api” 实际指向的是什么

少数几个仓库,没有一个是官方的,全都很脆弱:

为什么它们最终都会坏

这些工具抓取的是一个实时网站,所以它们继承了那个网站的每一道防御。JavDB 藏在 Cloudflare 背后,这些项目里有一半需要同时运行 FlareSolverr 才能把页面拿回来。有些内容(fc2)需要一个你手动粘贴进去、过期后还得刷新的会话 cookie。站点上一次类名重命名就会悄无声息地搞坏你的解析器,没有变更日志,没有警告,然后你的元数据某天就这么空了。而且因为 JavDB 的元数据只有英文和中文,任何基于它构建的东西都会缺失日文字段。

所以你维护的并不是一个集成。你维护的是一个抓取工具、一个无头浏览器绕过方案、一个 cookie,以及一个在凌晨两点全部崩溃时呼叫你的传呼机。

一个托管的替代方案

javinfo 就是 JavDB 从未给过你的那个 API。它有一个真正的 javdb 数据源:发送一个番号,拿回结构化的元数据,包括抓取工具们追逐的下载链接和磁力链接。每次都是相同的结构,不需要你看管任何东西。

Look up a code
curl -X POST 'https://javinfo-search.p.rapidapi.com/search' \
-H 'Content-Type: application/json' \
-H 'X-RapidAPI-Key: YOUR_RAPIDAPI_KEY' \
-H 'X-RapidAPI-Host: javinfo-search.p.rapidapi.com' \
-d '{ "q": "CAWD-001", "providers": "javdb" }'
Response (javdb)
{
"result": {
"q": "CAWD-001",
"source": "javdb",
"video": { "dvdId": "CAWD-001", "runtimeMins": 120, "series": "Series Name" },
"extra": {
"downloadLinks": [
{ "name": "CAWD-001 1080p", "size": 5905580032, "hd": true, "magnet": "magnet:?xt=urn:btih:..." }
],
"score": 4.3,
"voteCount": 512
}
},
"latencyMs": 980,
"cached": false,
"gated": false
}

每个数据源都映射到相同的基础 video 结构,所以无论哪个源做出了响应,你都以相同的方式读取 result.video.*。我们替你打理抓取和 Cloudflare 的缠斗。它是覆盖每一个数据源的同一个 JAV 元数据 API 的一部分,设计上与数据源无关 —— 一个持续维护的集成,胜过一堆脆弱的抓取脚本。JavDB 远不是唯一一个这样的数据源。DMM 更糟

鉴权、速率限制和套餐都在 RapidAPI 上。javdb 数据源及其下载链接属于 Pro 套餐(每天 1,000 次请求),missav 数据源也在其中。你可以在一分钟内跑起来。不需要 Docker,不需要 FlareSolverr,不需要 cookie。