海洋 CMS 采集 json 接口需要修改哪些参数
结论:海洋CMS 采集 JSON 接口,真正需要改的就 6 个参数——接口地址、接口类型(选 JSON)、分类绑定、采集范围(页数/条数/时间)、入库与去重方式、超时与采集间隔。其中改错概率最高的是接口地址里多粘了动态参数,以及分类没绑定,这两个问题会直接表现为"采集成功 0 条"。
海洋 CMS 的 JSON 采集接口需要改哪些参数?
按顺序核对下面 6 项,90% 的采集失败都出在其中某一项:
1. 接口地址(URL):只保留到接口文件的路径,不要粘贴浏览器里带 ?ac=videolist&pg=1 这类翻页参数的完整地址。翻页、页数由 CMS 自己拼接,地址里带了 pg 参数会导致每页都采同一批数据。
2. 接口类型:JSON 和 XML 是两个单选项,必须选 JSON。选错时的典型报错是"接口返回数据解析失败",而不是"连接失败"——这是区分地址错还是类型错的最快判据。
3. 分类绑定:把资源站的分类 ID 一一映射到本地栏目。注意资源站的分类 ID 是会调整的,老接口加新分类后如果不重新绑定,新分类的数据会全部丢弃或跑到默认栏目。
4. 采集范围:页数、每页条数、起止时间三者同时生效。首次采集建议限制页数(如 5 页)、单次 100~200 条,验证没问题再放开。
5. 入库与去重:选择"直接入库"还是"待审核"。去重建议按播放地址或资源 ID 判断,而不是按标题——同一部剧的资源站标题前后可能带"高清版""完结"等后缀,按标题去重会产生重复剧集。
6. 超时与间隔:接口超时默认值往往偏小,改到 30 秒;每次请求间隔设 1~2 秒,单次采集条数越大越要留间隔,否则容易被资源站封 IP。
接口地址怎么填才不会报错?
结论:地址要"干净、可 curl 通、编码正确"三件事都满足。
先用命令行验证,能拿到 JSON 再往后台填:
curl -A "Mozilla/5.0" -m 30 "http://资源站域名/api.php/provide/vod/?ac=list"
返回以 { 开头、含 "list" 或 "data" 字段,说明地址和鉴权没问题。如果返回 HTML 登录页,说明该资源站需要 Cookie 或密钥,要在采集设置里补上请求头。
三点注意:一是别把 http 写成 https,部分资源站没配证书会直接超时;二是域名后面该有斜杠就带斜杠,路径 301 跳转时采集器不一定跟随;三是接口如果需要 key,&key=xxx 要完整带上,且不要对它做二次 URL 编码。
JSON 采集的字段对不上怎么办?
结论:字段名对不上是资源站和采集规则不匹配,靠改参数解决不了。
常见的资源站 JSON 字段是 vod_id、vod_name、vod_play_url、vod_play_from 这一套;播放地址里用 $$$ 分隔线路、# 分隔集数。如果某个接口返回的是 title、url 这种自定义字段名,而后台没有字段映射入口,那就只能换接口,硬采会得到一堆空标题的记录。
另外确认接口返回编码是 UTF-8。若返回 GBK,中文标题会变乱码,需要在采集规则里指定编码或让资源站换接口。
采完没数据、只采到几十条是怎么回事?
按"地址 → 类型 → 分类 → 范围"的顺序排查:
- 采集日志显示"成功 0 条、失败 0 条":地址或类型错,回到上一步用 curl 验证。
- 显示"成功 0 条、跳过 N 条":分类没绑定或全部被去重规则过滤。
- 只采到几十条就停:多为接口超时中断,把超时调到 30 秒以上、间隔加到 2 秒重跑。
- 数据入库了但前台不显示:检查入库方式是不是"待审核",以及采集到的内容状态和时间字段。
最后提醒一点:图片本地化开关一旦打开,采集速度会下降到原来的几十分之一,首次试采建议先关掉它,确认数据正确后再开。
收束一下:JSON 采集的核心是"地址干净、类型选 JSON、分类绑全、范围收窄、去重按 ID、超时给足"。这 6 项逐一核对一遍,海洋CMS 的 JSON 采集基本不会出问题。
原文链接:https://www.gj0.com/thread-542.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。