plugin/ouge/json结构分析.md
https://woog.nxog.eu.org/api.php/provide/vod?ac=detail&wd={关键词}{
"code": 1, // 状态码:1表示成功
"msg": "数据列表", // 响应消息
"page": 1, // 当前页码
"pagecount": 1, // 总页数
"limit": 20, // 每页限制条数
"total": 3, // 总记录数
"list": [] // 数据列表数组
}
list数组中的数据项结构{
"vod_id": 18010, // 资源唯一ID
"vod_name": "凡人修仙传", // 资源标题
"vod_actor": "杨洋,金晨,汪铎...", // 主演(逗号分隔)
"vod_director": "杨阳", // 导演
"vod_area": "中国大陆", // 地区
"vod_year": "2025", // 年份
"vod_remarks": "第11集", // 更新状态/备注
"vod_pubdate": "2025-07-27(中国大陆)", // 发布日期
"vod_content": "<p>...</p>", // 内容描述(HTML格式)
"vod_pic": "https://...", // 封面图片URL
// 关键字段:下载链接相关
"vod_down_from": "bd$$$KG$$$UC", // 下载源标识($$$分隔)
"vod_down_url": "https://pan.baidu.com/s/13milLJZV5_7DCzGDQu-fcA?pwd=8888$$$https://pan.quark.cn/s/0fe46ed6eefc$$$https://drive.uc.cn/s/d83caf5d4fb74"
}
| 源字段 | 目标字段 | 说明 |
|---|---|---|
vod_id | UniqueID | 格式: ouge-{vod_id} |
vod_name | Title | 资源标题 |
vod_actor, vod_director, vod_area, vod_year, vod_remarks | Content | 组合描述信息 |
vod_year, vod_area | Tags | 标签数组 |
vod_down_from + vod_down_url | Links | 解析为Link数组 |
"" | Channel | 插件搜索结果Channel为空 |
time.Now() | Datetime | 当前时间 |
$$$ 分隔vod_down_from、vod_down_url 按相同位置对应| API标识 | 网盘类型 | 域名示例 |
|---|---|---|
bd | baidu (百度网盘) | pan.baidu.com |
KG | quark (夸克网盘) | pan.quark.cn |
UC | uc (UC网盘) | drive.uc.cn |
百度网盘: https://pan.baidu.com/s/13milLJZV5_7DCzGDQu-fcA?pwd=8888
夸克网盘: https://pan.quark.cn/s/0fe46ed6eefc
UC网盘: https://drive.uc.cn/s/d83caf5d4fb74
https://pan.baidu.com/s/{分享码}?pwd={密码}https://pan.quark.cn/s/{分享码}https://aliyundrive.com/s/{分享码}, https://www.alipan.com/s/{分享码}https://drive.uc.cn/s/{分享码}https://pan.xunlei.com/s/{分享码}https://cloud.189.cn/t/{分享码}https://caiyun.feixin.10086.cn/{分享码}https://115.com/s/{分享码}https://share.weiyun.com/{分享码}https://lanzou.com/{分享码}https://jianguoyun.com/{分享码}https://123pan.com/s/{分享码}https://mypikpak.com/s/{分享码}magnet:?xt=urn:btih:{hash}ed2k://|file|{filename}|{size}|{hash}|/searchURL := fmt.Sprintf("https://woog.nxog.eu.org/api.php/provide/vod?ac=detail&wd=%s", url.QueryEscape(keyword))
result := model.SearchResult{
UniqueID: fmt.Sprintf("ouge-%d", item.VodID),
Title: item.VodName,
Content: buildContent(item),
Links: parseDownloadLinks(item.VodDownFrom, item.VodDownURL),
Tags: []string{item.VodYear, item.VodArea},
Channel: "", // 插件搜索结果Channel为空
Datetime: time.Now(),
}
// 按$$$分隔
fromParts := strings.Split(item.VodDownFrom, "$$$")
urlParts := strings.Split(item.VodDownURL, "$$$")
// 遍历对应位置
for i := 0; i < min(len(fromParts), len(urlParts)); i++ {
linkType := mapCloudType(fromParts[i], urlParts[i])
password := extractPassword(urlParts[i])
// ...
}
$$$分隔,需要split处理?pwd=参数code != 1的错误状态javascript:;等)woog.nxog.eu.org而不是其他域名