点量视频解析  返回旧版

点量视频解析为您提供快捷、稳定的点播、直播视频网站真实地址获取解决方案。

{...}

WebAPI 调用说明


API 以 请求地址 + 参数 的形式被调用,如:

  1. 参数用 GET 方式传递,API 默认返回的内容为json格式,如果需要jsonp格式的 数据返回,请在参数里面传入o=jsonp,callback参数填写回调函数名。
  2. 其他参数,请查看参数说明,对于参数说明中的参数名,如果其中包含大写字母,请将大写字母转换为小写,并在前面加“-”,如infoOnly,作为url参数传递的话请转换为info-only。

C 接口调用说明


具体参数说明和其他接口,请参照头文件注释,其他解析输入参数,请查看参数说明,编译或运行过程中如果出现错误,可以查看FAQ是否可以帮到您,例子:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#include "siteparser/siteparser.h"

int main(int argc, char *argv[]) {
    //调用dlsp_initW初始化接口,参数一为脚本规则路径,参数二为密钥,测试版密钥为test
    //dlsp_initW为unicode接口,只能windows使用,unix,ios等请使用dlsp_init
    if (dlsp_initW(L" d:\\script.spp", " test") != SP_E_OK) {
        return 1;
    }
    //将解析类型和解析地址拼成JSON字符串传递给dlsp_parse
    //其中type为解析类型(live为直播类型,livelist为直播列表采集,vod为点播类型),url为需要解析的网页地址
    char parse_buf[1024] = { 0 };
    sprintf_s(parse_buf, sizeof(parse_buf),
        " {\" type\" :\" %s\", \" url\" :\" %s\" }", " live",
        " http://www.yy.com/54880976/54880976?tempId=16777217");
    printf(" Parsing now, please wait...\n");
    char* json = dlsp_parse(parse_buf);
    if (json) {
        //解析结果为json字符串,具体字段意义可以参考http://new.flvurl.cn:8001/
        printf(" %s\n", json);
        dlsp_free(json);
    }
    dlsp_uninit();
    return 0;
}


注:

  函数dlsp_parse的输入参数支持两种形式,一种是json格式,一种是url方式。其中json方式如上例,url方式如下:
  dlsp_parse("type=vod&info-only=true&url=https%3A%2F%2Fv.qq.com%2Fx%2Fcover%2Fj6cgzhtkuonf6te.html");

Android接口调用说明


具体参数说明和其他接口,其他解析输入参数,请查看参数说明,请参照cn.dolit.siteparser.Module注释,编译或运行过程中如果出现错误,可以查看FAQ是否可以帮到您,例子:

cn.dolit.siteparser.Module parseModule = new cn.dolit.siteparser.Module();
parseModule.init(packagePath, "test", this.getApplicationContext());
parseModule.parse("{\"type\":\"vod\",\"infoOnly\":false,\"url\":\"https%3A%2F%2Fv.qq.com%2Fx%2Fcover%2Fj6cgzhtkuonf6te.html\"}");
parseModule.uninit();

注:

  以下输入参数名称都是在传递json格式的时候使用,如果以url格式传递参数,并且参数名中包含大写字母,请将大写字母转换为小写,并在前面加“-”,如infoOnly,作为url参数传递的话请转换为info-only, 下面举例两种方式的不同:
  dlsp_parse("type=vod&info-only=true&url=https%3A%2F%2Fv.qq.com%2Fx%2Fcover%2Fj6cgzhtkuonf6te.html");
  dlsp_parse("{\"type\":\"vod\",\"infoOnly\":false,\"url\":\"https%3A%2F%2Fv.qq.com%2Fx%2Fcover%2Fj6cgzhtkuonf6te.html\"}");

基本输入参数


名称 可选值 默认值 描述
type vod live vod为点播解析,live为直播解析
url 需要解析的视频网页地址,需要进行url编码
o json jsonp format json 返回的数据格式
timeout 正整数,单位秒 0 解析超时设置

点播输入参数


名称 可选值 默认值 描述
infoOnly true false false 是否只返回视频相关信息,等于true时,不返回视频地址
selType 参照流信息 返回指定的视频类型的流
selQuality 参照流信息 返回指定的视频清晰度的流
selPlatform 参照流信息 返回指定的视频平台的流(只有部分网站支持)
firstSeg true false false 对于多段视频,只返回流的第一段
backupUrl true false false 是否返回备份地址
singleOnly true false false 是否只返回单段视频地址

输出参数


名称 描述
code 错误码, 0: 成功, 其他值: 失败
message 错误信息
cost 执行耗时
data 返回详细信息

错误码信息:

错误码 含义说明
0 成功
1 未知错误
2 参数错误
3 无法找到匹配的规则解析器
4 解析失败
5 解析引擎未初始化
6 非法授权
7 解析引擎太老,需要升级引擎
8 解析超时

直播输出详细参数


名称 描述
title 直播标题
streams 直播流数组信息,可以包含多种格式的流信息

流信息:

名称 描述
quality 流的清晰度(SPEED SD HD SUPERHD ORIGINAL 720P 1080P 2K 4K
type 流格式类型(RTMP HLS FLV
url 流地址
backupUrl 备份流地址数组
headers 播放流所必须使用的http头,部分网站会限制Referer,或者User-Agent等,会通过此字段进行标识

点播输出详细参数


名称 描述
title 直播标题
duration 时长
streams 点播流数组信息,可以包含多种格式的流信息

流信息:

名称 描述
quality 流的清晰度(SPEED SD HD SUPERHD ORIGINAL 720P 1080P 2K 4K
type 流格式类型(FLV MP4 M3U8 WEBM MP3
platform 流来源平台(PC_WEB MOBILE_H5 MOBILE_APP
audioCodec 音频编码(AAC OPUS VORBIS EAC3
segs 视频分段信息数组
headers 播放流所必须使用的http头,部分网站会限制Referer,或者User-Agent等,会通过此字段进行标识

分段信息:

名称 描述
size 分段文件大小
duration 时长
url 视频段地址
backupUrl 视频段备份地址数组

我们暂时不提供脚本自动升级模块,但是您可以通过以下方式自行处理:

1.首先需要准备一个版本检测的webapi,返回数据如下


{
    //规则文件下载地址
    "url": "http://update.flvurl.cn/siteparser/rule/custom/test/script.spp",
    //规则文件md5哈希值
    "hash": "66B5A95ABF0CBFA7CEF42099D2A5C9B6",
    //规则文件生成时间
    "time": 1493083667
}
            
2.每次启动应用的时候,或者定时检测,当发现版本检测的webapi返回的hash值和本地规则文件的hash值不匹配的时候,说明规则文件发生了变化,需要更新,通过url参数指定的地址将规则文件下载到本地。
3.规则文件替换成功后,需要先调用unint方法,卸载当前的解析引擎,再init重新初始化一遍解析引擎就可以了。

注:

  规则文件的版本检测webapi,您也可以联系我们获取,由我们帮您管理规则文件的升级。

问:使用点量的安卓本地视频解析库,日志信息提示”Can't load siteparser library: java.lang.UnsatisfiedLinkError“

答:请参照Demo程序下libsiteparser.so文件存放位置,如果使用的开发工具是AndroidStudio,请将多个平台的so文件放置到main下面的jniLibs目录,如果使用的开发工具是eclips,请将多个平台的so文件放置到libs目录下。

问:使用点量的安卓本地视频解析库,日志信息提示”java.lang.UnsatisfiedLinkError: No implementation found for void ****.*****..Module.init“

答:请参照Demo程序下Module类的存放位置,包名路径是否正确,Module必须在cn.dolit.siteparser下面。

问:使用点量的本地视频解析库,调用init接口返回4,导致失败

答:init接口的返回值描述如下

错误码 含义说明
0 成功
1 未知错误
2 规则文件损坏
3 规则文件无法打开(一般为文件位置错误)
4 规则文件无法打开(一般为初始化密钥错误,请检查init的第二个参数)
6 传入参数不合法
电话
0531-66561946
E-mail
support@dolit.cn
联系方式
联系我们