采集字段说明

让观众愿意点进来,也有内容值得看下去。 一张海报之外,影片还可以有横向背景、别名、评分与主创资料;追剧时,也可以按季集查看剧情介绍。巨量提供这些资料,让你的模板有更多发挥空间。

站点入库也可以使用官方推荐的 找资源采集助手(约 38 秒导入全量)。说明见「AppleCMS 采集接入」的「官方推荐:找资源采集助手」。

  • 更有画面感: 海报原图、背景图与剧照分别提供,适合详情页首屏和图片展示。
  • 更值得参考: 评分与评分人数对应同一来源,豆瓣信息单列;演员、导演和编剧各归其位。
  • 更方便追剧: 多播放组、季集标题、更新状态与分集剧情,帮助观众找到要看的那一集。

想用这些资料丰富页面,优先看下面的 JSON 与 XML 选择,再查模板需要的字段。资料随影片而异,没有评分或图片时隐藏对应区域,页面会更清爽。

字段能力

JSON 影片资料包含 45 个字段,其中 40 个原生兼容字段、5 个扩展字段。可选字段在没有可信数据时可能省略,不代表每部影片都会返回 45 个键。

能力输出与含义
标题与别名vod_name 为片名;vod_sub 合并原名与别名;拼音由原版采集器生成
分类与题材type_id/type_name 为站点分类;type_id_1/type_name_1 为它的父分类,一级分类为 0;vod_class 为剧情、喜剧等题材
简介与摘要vod_content 保留简介;vod_blurb 为清理标记后的前 100 字
演职员演员、导演、编剧分别输出,不混用角色
日期与时长vod_pubdate 为发行/首播日期;vod_duration 单位为分钟
评分普通评分与人数同源;豆瓣条目和评分单独提供,没有评分时不显示
图片海报、原图、背景图、已发布集剧照分别提供;没有对应素材时保持空值
分集剧情vod_plot_name/detail 按分集标题配对,保留季集顺序;每集最多 2000 字。默认不含,渠道打开「单集详情」或地址加 plot=1 后提供
播放组from/url/server/note 组数一致;多项播放标签带唯一序号,避免原版 XML 排序误去重

每部影片的资料完整程度不同。没有图片、评分或剧情时,相应字段可能为空或不返回;建议模板隐藏这些空白区域。

JSON 与 XML 如何选择

完整元数据采集优先选择 JSON:

https://api.juliang.live/api/provide/vod/?ac=videolist&pg=1

传统 XML 采集入口:

https://api.juliang.live/api/provide/vod/at/xml/?ac=videolist&pg=1

detail 与 videolist 使用相同详情逻辑。首次采集仍需绑定分类、注册对应播放器。

字段范围原版 JSON 采集原版 XML 采集
标题、别名、演员、导演、简介、播放地址可读取可读取对应节点
完结读取 vod_isend从 state 连载数推导
总集数可读取 vod_total原版固定为 0
评分、豆瓣、时长、编剧、分集剧情接收对应 JSON 字段原版没有对应读取逻辑
父分类详情每条带 type_id_1(一级为 0)与 type_name_1原版 XML 不含父分类;只认 tid 与 type

只打详情、自己按大类归档的程序,可直接用 type_id_1 判断属于电影还是电视剧,无需再对照分类表。苹果 CMS 入库仍按你绑定的本地分类重新计算父分类。

原版开启随机评分时会覆盖上游评分及人数;需要保留来源评分时,请关闭随机评分设置。

重新采集后旧资料没有变化?请检查 CMS 的采集更新设置,部分字段默认不会覆盖已有内容。

自建 App 如何使用资源编号

emp_content_id 是内容编号,emp_unit_id 是可选的分集或单元编号,emp_revision 是内容版本号,emp_content_type 是内容类型。普通 CMS 接入无需处理这些字段,自建 App 可用它们关联资料和识别更新。

资源 ID 可能超过 JavaScript 安全整数范围。客户端应使用无损 JSON 解析,并以字符串保存编号,避免 ID 精度丢失。

完整逐字段对照表

下面列出 AppleCMS 常用的 89 个原生字段和 5 个本站扩展字段,方便你检查采集结果。本站定义 45 个字段;没有资料的可选字段可能不返回,实际收到的字段数会因影片而异。

XML 一栏说明原版采集器读取或生成的内容。不同 CMS 版本、采集设置和模板可能影响最终显示效果。

40 个兼容字段

字段含义与本站类型本站 JSON原版 XML
vod_id资源编号;可能超过 JavaScript 安全整数,应使用无损 JSON 解析。与你站点的视频编号可能不同。(integer)支持;未知为 0id
type_id渠道公开分类 ID,需要在 CMS 中绑定(integer)支持;未知为 0tid
type_id_1type_id 的父分类 ID,与分类列表 type_pid 同一套编号,例如内地剧为电视剧的 ID;本身是一级分类时为 0。苹果 CMS 入库按绑定后的本地分类重算。(integer)支持;一级为 0不输出、不读取
vod_name影片标题(string)支持;未知为空name
vod_sub原名与别名去重合并,最多 255 字。(string)支持;未知省略subname
vod_en拼音/链接名。当前省略,由原版采集器按片名生成;绝不填别名。(string)委托原版生成;接口省略按片名生成拼音
vod_status上游发布可见状态,原版入库以本站配置为准。(integer)支持;未知为 0采集配置决定
vod_tag题材标签(string)支持;未知省略不读取
vod_class题材,与 type_id/type_name 的站点分类区分。(string)支持;未知省略不读取
vod_pic按平台出图规则选择的公开海报(string)支持;未知省略pic
vod_pic_slide影片背景图,未知空。(string)支持;未知为空不读取
vod_pic_original海报原图,未知空。(string)支持;未知为空不读取
vod_pic_screenshot已发布集的有效剧照,最多 20 张,以 $$$ 分隔。默认为空,渠道打开「单集详情」或地址加 plot=1 时提供。(string)支持;未知为空不读取
vod_actor主演名单(string)支持;未知为空actor
vod_director导演名单(string)支持;未知为空director
vod_writer编剧名单,最多 100 字。(string)支持;未知为空不读取
vod_blurb正文去标记、解实体、合并空白后的前 100 字。(string)支持;未知为空由简介生成摘要
vod_remarks发布备注(string)支持;未知为空note
vod_pubdate来源发行/首播日期 YYYY-MM-DD,未知空字符串。(string)支持;未知为空不读取
vod_total可信详情提供的总集数,未知为 0。(integer)支持;未知省略固定 0
vod_serial连载时公开播放组最大项数,完结时 0;不是当前季最大集号。(integer)支持;未知省略state
vod_area地区名称(string)支持;未知省略area
vod_lang语言名称(string)支持;未知省略lang
vod_year发行年份(string)支持;未知省略year
vod_isend0 未完结,1 已完结。电影为 1。剧集在 TMDB 确认为完结、至少 3 个不同上游的当前备注标成完结,或选集只有一个「全集」(整部合集)时为 1。注意:isend 筛选暂只认 TMDB,由备注或「全集」判定完结的剧集这里为 1,但不会被 isend=1 选中。(integer)支持;未知省略由 state 推导
vod_duration时长,单位分钟;剧集为来源提供的单集时长,不是全剧总时长。(string)支持;未知省略不读取
vod_score10 分制来源评分,优先豆瓣、TMDB、Bangumi 的有效评分;人数必须同源。(string)支持;未知省略不读取
vod_score_num与 vod_score 对应的评分人数,未知省略。(string)支持;未知省略不读取
vod_time内容变更的 UTC 时间,无时区格式。对应发现投影 activated_at,与 h 同一口径:只有该渠道首次出现,或已发布集编号集合里出现了以前没有的集,才推进。只删集、备注里的集数变化、标题、分类、类型、年份、同一集的集名,以及只换播放线路,都不推进。原版入库默认改为采集时间。(string)支持;未知为空last
vod_douban_id豆瓣条目编号。(integer)支持;未知省略不读取
vod_douban_score对应豆瓣条目的 10 分制评分。(string)支持;未知省略不读取
vod_content完整简介(string)支持;未知为空des
vod_play_from详情播放组以 $$$ 分隔;简表以逗号分隔。(string)支持;未知为空dl/dd/@flag
vod_play_server与 from 同组数,默认每组 no。(string)支持;未知为空逐组生成 no
vod_play_note与 from 同组数,默认每组空字符串。(string)支持;未知为空逐组生成空注记
vod_play_url播放组以 $$$ 分隔,组内以 # 分集,每项 标题$URL。默认标题不带单集标题:JSON 写「第 2 季 第 1 集」、只有第 1 季时写「第 N 集」,XML 只有第 1 季时写「第 N 集」、其余「第 13 集(第 2 季 第 1 集)」;包含单集详情时带上单集标题。JSON 多项不加序号;XML 多项另加组内四位序号,避免原版按第一个数字覆盖。(string)支持;未知省略dl/dd
vod_plot包含单集详情且存在已发布集剧情为 1,否则 0;默认不含,为 0。(integer)支持;未知为 0不读取
vod_plot_name按已发布集顺序排列的剧情标题,以 $$$ 分隔;默认不含时为空。(string)支持;未知为空不读取
vod_plot_detail与剧情标题一一对应;每集纯文本最多 2000 字,字面分隔符转全角;默认不含时为空。(string)支持;未知为空不读取
type_name渠道公开分类名(string)支持;未知省略type

其余 49 个字段

站内积分、权限、统计和模板请在自己的 CMS 中设置。下表同时列出目前不提供的资料和下载字段。

字段含义本站处理原版 XML
group_id用户组限制在自己的 CMS 中设置不读取
vod_audit_remark审核备注在自己的 CMS 中设置不读取
vod_letter拼音首字母CMS 从拼音生成由拼音生成
vod_color标题颜色在自己的 CMS 中设置不读取
vod_pic_thumb独立缩略图暂不提供不读取
vod_behind幕后信息暂不提供不读取
vod_publish_time定时上架时间在自己的 CMS 中设置不读取
vod_tv播出电视台暂不提供不读取
vod_weekday播出星期暂不提供不读取
vod_version影片版本暂不提供不读取
vod_state资源类别(不是 XML state)暂不提供不读取
vod_author内容作者在自己的 CMS 中设置不读取
vod_jumpurl跳转地址在自己的 CMS 中设置不读取
vod_tpl详情页模板在自己的 CMS 中设置不读取
vod_tpl_play播放页模板在自己的 CMS 中设置不读取
vod_tpl_down下载页模板在自己的 CMS 中设置不读取
vod_lock数据锁定在自己的 CMS 中设置不读取
vod_level推荐级别在自己的 CMS 中设置不读取
vod_copyright版权限制标记在自己的 CMS 中设置不读取
vod_points内容积分在自己的 CMS 中设置不读取
vod_points_play播放积分在自己的 CMS 中设置不读取
vod_points_down下载积分在自己的 CMS 中设置不读取
vod_hits总点击量在自己的 CMS 中设置不读取
vod_hits_day日点击量在自己的 CMS 中设置不读取
vod_hits_week周点击量在自己的 CMS 中设置不读取
vod_hits_month月点击量在自己的 CMS 中设置不读取
vod_up顶次数在自己的 CMS 中设置不读取
vod_down踩次数在自己的 CMS 中设置不读取
vod_score_all评分总分未输出;不以平均分推造总分不读取
vod_time_add本站入库时间CMS 新增时生成新增时生成
vod_time_hits点击时间在自己的 CMS 中设置不读取
vod_time_make静态生成时间在自己的 CMS 中设置不读取
vod_recycle_time回收时间在自己的 CMS 中设置不读取
vod_trysee试看时长在自己的 CMS 中设置不读取
vod_reurl来源网址暂不提供不读取
vod_rel_vod关联视频 ID暂不提供不读取
vod_rel_art关联文章 ID暂不提供不读取
vod_pwd内容访问密码在自己的 CMS 中设置不读取
vod_pwd_url内容密码说明地址在自己的 CMS 中设置不读取
vod_pwd_play播放密码在自己的 CMS 中设置不读取
vod_pwd_play_url播放密码说明地址在自己的 CMS 中设置不读取
vod_pwd_down下载密码在自己的 CMS 中设置不读取
vod_pwd_down_url下载密码说明地址在自己的 CMS 中设置不读取
vod_down_from下载组未提供下载资源不读取
vod_down_server下载服务器组未提供下载资源不读取
vod_down_note下载组注记未提供下载资源不读取
vod_down_url下载地址未提供下载资源不读取
vod_share_count分享次数在自己的 CMS 中设置不读取
type_is_vip_exclusive分类 VIP 专享标记在自己的 CMS 中设置不读取

5 个扩展字段:供 App 与定制客户端使用

这 5 个字段是扩展信息,普通 CMS 可以忽略,不影响影片资料和播放地址的采集。

字段类型含义与空值可实现的用途
emp_content_idinteger内容编号;无值省略关联同一内容的不同页面
emp_unit_idinteger可选分集或单元编号;没有时省略定位相关分集或单元;不包含全部分集编号
emp_revisioninteger内容发布修订号;未知为 0判断同一资源的版本变化
emp_content_typestring内容类型;未知省略按电影、剧集等选择展示布局
type_name_1string父分类名,如「电视剧」;一级分类或名称未知时省略只打详情也能展示「电视剧 → 内地剧」层级

以上 ID 请无损解析并以字符串保存,避免编号被截断或四舍五入。

这些字段能呈现什么效果

可以用这些字段丰富你的影片页面。具体显示位置由模板决定;想显示更多资料,建议使用 JSON 采集,并在模板中添加对应字段。

展示区域可实现的效果对应字段能力与边界
影片列表卡片海报、片名、年份、短摘要、更新角标vod_pic、vod_name、vod_year、vod_blurb、vod_remarks基础数据已提供;摘要最多 100 字
详情页首屏原图海报、横向背景、别名、地区语言和时长vod_pic_original、vod_pic_slide、vod_sub、vod_area、vod_lang、vod_duration原图与背景分别取素材;缺图不拿海报冒充背景
筛选与资料栏分类与父分类、题材、发行日期、导演/主演/编剧type_id/type_name、type_id_1/type_name_1、vod_class、vod_pubdate、vod_director/actor/writer编剧有数据时已输出;演职员是名单,不含人物头像和个人主页 ID
评分区普通评分及同源人数、独立豆瓣评分vod_score/score_num、vod_douban_id/douban_score普通评分不应默认标成豆瓣;关闭 CMS 随机评分才能保留来源值
播放选集区多播放组切换、保留季集标题、完整选集按钮vod_play_from/url/server/note四字段按组对齐,唯一序号避免 XML 排序误去重;不是独立结构化季集接口
追剧状态已完结/连载提示、可信总集数vod_isend、vod_serial、vod_total未知总集数 0 不显示为“共 0 集”;连载数不等于当前季最大集号
分集剧情页按季集标题展开剧情正文vod_plot/name/detail需渠道打开「单集详情」或地址加 plot=1;仅已发布且有剧情的单元,标题正文一一配对;每集最多 2000 字
剧照画廊已发布集的剧照浏览vod_pic_screenshot需渠道打开「单集详情」或地址加 plot=1;最多 20 张;当前是 URL 列表,不含逐图季集 ID 映射
定制 App 资料同步稳定内容引用与修订识别emp_content_id/unit_id/revision/content_type用内容编号关联资料,用版本号判断更新

常见问题

为什么采集结果没有分集剧情和剧照?

单集剧情、剧照和选集里的单集标题默认不提供。请运营为你的渠道打开「单集详情」,或在采集地址加 plot=1,具体写法见「AppleCMS 采集接入」的「单集剧情与剧照」。

接口有背景图,为什么我的站点没有显示?

先确认采集格式,再检查模板。原版 XML 采集不会读取全部图片字段;需要背景图、评分和分集剧情时,优先使用 JSON,并让模板显示相应字段。

为什么有的影片没有评分或编剧?

该影片可能暂时没有对应资料。建议隐藏空白区域;不要把未知评分显示成零分,也不要用随机评分替代来源评分。

重新采集后,旧资料为什么没有更新?

查看 CMS 的采集更新设置。已有记录可能只更新集数和播放地址,需要勾选对应资料的更新选项;先用一部影片测试,再批量更新。