用户工具

站点工具


api:html

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
api:html [2019/07/09 20:16]
admin
api:html [2020/03/28 19:59] (当前版本)
admin
行 1: 行 1:
-===== 编码检测 ​===== +[[web:​crawler]] 
-    https://​api.xlongwei.com/​service/​html/​charset +===== js config 配置脚本 ​===== 
-==== 请求 ​==== +    https://​api.xlongwei.com/​service/​html/​jsConfig 
-^参数 ^类型 ​ ^说明 ^ + 
-|url |String ​|网址 ​+|datakey |data命名,可选 | 
-|bytes |String ​|字base64串 | +|data |json配置,可选 | 
-==== 响应 ​==== +|jskey |js命名,可选 | 
-^字段 ^示例 ^ +|js |js脚本,可选 | 
-|charset ​|编码 ​+ 
-===== 获取网页 ​===== +|datakey |data命名 | 
-    https://​api.xlongwei.com/​service/​html/​get +|data |json配置 | 
-==== 请求 ​==== +|jskey |js命名 | 
-^参数 ^类型 ​ ^说明 ^ +|js |js配置 | 
-|url |String ​|网址 ​+推荐方式:jskey+正文,datakey+正文,jskey+js,datakey+data,js+data,jskey+js+datakey+data 
-|force |String ​|默认false | + 
-==== 响应 ​==== +查看配置:[[https://​api.xlongwei.com:​8443/​service/​html/​jsConfig?​datakey=user.123|datakey]] 
-^字段 ^示例 ​^ +[[https://​api.xlongwei.com:​8443/​service/​html/​jsConfig?​jskey=welcome.msg|jskey]] 
-|html|网页文本 | +===== js eval 脚本跑数据 ===== 
-===== crawl config =====+    ​https://​api.xlongwei.com/​service/​html/​jsEval 
 + 
 +|data |datakey或json ​| 
 +|js |jskey或js正文 ​| 
 + 
 +|result ​|结果 ​| 
 +推荐方式:datakey+jskey(正式);data=encodeURIComponent(json) + js=正文脚本(测试) 
 + 
 +脚本语法:最后一行返回string符串,脚本跑数据期望结果是字符 
 + 
 +[[https://​api.xlongwei.com:​8443/​service/​html/​jsEval?​data=user.123&​js=welcome.msg|示例]] 
 +[[https://​api.xlongwei.com:​8443/​service/​html/​jsEval?​data=%7B%22name%22%3A%22%E5%BC%A0%E4%B8%89%22%2C%22sex%22%3A0%7D&​js='​%E6%82%A8%E5%A5%BD%EF%BC%9A'​%2Bdata.name%2B(data.sex%3D%3D0%3F'​%E5%85%88%E7%94%9F'​%3A'​%E5%A5%B3%E5%A3%AB'​)|示例2]] 
 +===== js evals 批量脚本跑数据 ===== 
 +    ​https://​api.xlongwei.com/​service/​html/​jsEvals 
 + 
 +|datakeys ​|逗号分隔多个datakey ​| 
 +|jskeys |逗号分隔多个jskey | 
 + 
 +|results |[{datakey,​jskey,​result,​error}] | 
 +推荐方式:jskeys+datakeys,jskeys+正文data(例如:一份数据跑多个脚本生成一张问卷) 
 +[[https://​api.xlongwei.com:​8443/​service/​html/​jsEvals?​jskeys=welcome.msg,​welcome.agent&​datakeys=user.123|示例]] 
 +===== jsQn 问题转js ​===== 
 +    https://​api.xlongwei.com/​service/​html/​jsQn 
 + 
 +|qn |问题规则,或问题条件 | 
 +|isCondition |是否带出条件,默认false | 
 + 
 +|js |js脚本 | 
 + 
 +问题规则: 
 +  - {变量},使用花括号引用变量,值为空时原样输出,支持转义字符\{ 
 +  - (条件)[内容],条件内容有三个标记:(、)[、],中间的“)[”必须连续 
 +  - 条件支持and、or,混合使用时需要加上明确的分组括号 
 +  - 条件为等于=、不等于!=时,支持顿号简化:{机构}=北京、上海,等价于:{机构}=北京 or {机构}=上海 
 +  - [老({机构}=北京)[{机构}]先生]:条件内容支持嵌套{变量|、(条件)[内容] 
 +  - <>​[内容],顶层循环,支持内嵌列表循环 
 +  - <​列表>​[内容],列表循环,支持[、-]删除最后一个字符 
 + 
 +qn=您好:{姓名}(({性别}=男 and {年龄}>​60) or {机构}=北京、上海)[老({机构}=北京)[{机构}]先生] 
 + 
 +[[https://​api.xlongwei.com/​service/​html/​jsQn?​qn=%E6%82%A8%E5%A5%BD%EF%BC%9A%7B%E5%A7%93%E5%90%8D%7D((%7B%E6%80%A7%E5%88%AB%7D%3D%E7%94%B7%20and%20%7B%E5%B9%B4%E9%BE%84%7D%3E60)%20or%20%7B%E6%9C%BA%E6%9E%84%7D%3D%E5%8C%97%E4%BA%AC%E3%80%81%E4%B8%8A%E6%B5%B7)%5B%E8%80%81(%7B%E6%9C%BA%E6%9E%84%7D%3D%E5%8C%97%E4%BA%AC)%5B%7B%E6%9C%BA%E6%9E%84%7D%5D%E5%85%88%E7%94%9F%5D|示例]][[https://​api.xlongwei.com/​service/​html/​jsQn?​isCondition=true&​qn=(%7B%E6%80%A7%E5%88%AB%7D%3D%E7%94%B7%20and%20%7B%E5%B9%B4%E9%BE%84%7D%3E60)%20or%20%7B%E6%9C%BA%E6%9E%84%7D%3D%E5%8C%97%E4%BA%AC%E3%80%81%E4%B8%8A%E6%B5%B7|示例2]] 
 +===== jsQnEval 问题跑数据 ===== 
 +    https://​api.xlongwei.com/​service/​html/​jsQnEval 
 + 
 +|data |json 
 +|qn |问题规则,或问题条件 ​| 
 +|isCondition |是否带出条件,默认false | 
 + 
 +|result |结果 | 
 + 
 +data={姓名:'​老张',​性别:'​男',​年龄:​ "​60",​ 机构: "​北京"​} 
 + 
 +[[https://​api.xlongwei.com/​service/​html/​jsQnEval?​qn=%E6%82%A8%E5%A5%BD%EF%BC%9A%7B%E5%A7%93%E5%90%8D%7D((%7B%E6%80%A7%E5%88%AB%7D%3D%E7%94%B7%20and%20%7B%E5%B9%B4%E9%BE%84%7D%3E60)%20or%20%7B%E6%9C%BA%E6%9E%84%7D%3D%E5%8C%97%E4%BA%AC%E3%80%81%E4%B8%8A%E6%B5%B7)%5B%E8%80%81(%7B%E6%9C%BA%E6%9E%84%7D%3D%E5%8C%97%E4%BA%AC)%5B%7B%E6%9C%BA%E6%9E%84%7D%5D%E5%85%88%E7%94%9F%5D&​data=%7B%22%E5%A7%93%E5%90%8D%22%3A%22%E8%80%81%E5%BC%A0%22%2C%22%E6%80%A7%E5%88%AB%22%3A%22%E7%94%B7%22%2C%22%E5%B9%B4%E9%BE%84%22%3A%2260%22%2C%22%E6%9C%BA%E6%9E%84%22%3A%22%E5%8C%97%E4%BA%AC%22%7D|示例]][[https://​api.xlongwei.com/​service/​html/​jsQnEval?​isCondition=true&qn=(%7B%E6%80%A7%E5%88%AB%7D%3D%E7%94%B7%20and%20%7B%E5%B9%B4%E9%BE%84%7D%3E60)%20or%20%7B%E6%9C%BA%E6%9E%84%7D%3D%E5%8C%97%E4%BA%AC%E3%80%81%E4%B8%8A%E6%B5%B7&​data=%7B%22%E5%A7%93%E5%90%8D%22%3A%22%E8%80%81%E5%BC%A0%22%2C%22%E6%80%A7%E5%88%AB%22%3A%22%E7%94%B7%22%2C%22%E5%B9%B4%E9%BE%84%22%3A%2260%22%2C%22%E6%9C%BA%E6%9E%84%22%3A%22%E5%8C%97%E4%BA%AC%22%7D|示例2]] 
 +实际使用时,应优先调用jsQn将问题转为js,然后调用jsConfig得到jskey,最后调用jsEvals使用一份data批量跑多份jskey。 
 +===== crawl config ​配置规则 ​=====
     https://​api.xlongwei.com/​service/​html/​crawlConfig     https://​api.xlongwei.com/​service/​html/​crawlConfig
-==== 请求 ==== + 
-^参数 ^类型 ​ ^说明 ^ +|crawl |必填,例:demo.a[href] | 
-|crawl |String |名称,必填,例:demo.a[href] | +|config |js,可选 |
-|config ​|String ​|js脚本,可选 |+
 注:不能设置demo开头的crawl名称,但可以获取;新配置的crawl需要审核才能用于crawlData; 注:不能设置demo开头的crawl名称,但可以获取;新配置的crawl需要审核才能用于crawlData;
  
-示例查看demo配置:+|crawl |名称 | 
 +|config |js脚本 |
  
 +查看示例:
 [[https://​api.xlongwei.com:​8443/​service/​html/​crawlConfig?​crawl=demo.a[href]|demo.a[href]]] [[https://​api.xlongwei.com:​8443/​service/​html/​crawlConfig?​crawl=demo.a[href]|demo.a[href]]]
 [[https://​api.xlongwei.com:​8443/​service/​html/​crawlConfig?​crawl=demo.img[src]|demo.img[src]]] [[https://​api.xlongwei.com:​8443/​service/​html/​crawlConfig?​crawl=demo.img[src]|demo.img[src]]]
-==== 响应 ==== 
-^字段 ^示例 ^ 
-|crawl |名称 | 
-|config |js脚本 | 
-===== crawl data ===== 
-    https://​api.xlongwei.com/​service/​html/​crawlData 
-==== 请求 ==== 
-^参数 ^类型 ​ ^说明 ^ 
-|crawl |String |名称,必填,例如:demo.a[href] | 
-|url |String |网址,可选 | 
-|html |String |网页内容,可选 | 
-注:新配置的crawl需要审核才能用于crawlData,但可以试用demo开头的crawl名称。 
-==== 响应 ==== 
-^字段 ^示例 ^ 
-|crawl |名称 | 
-|url |网址 | 
-|data |数据 | 
  
 +[[https://​api.xlongwei.com/​doku.php?​id=web:​crawler.pdnovel|语法规则]]:
 +最后一行返回crawl = {'​urls':​[],'​data':​{}},规则之间有层次,返回urls为下一层网址集合
  
-获取面网址:[[https://​api.xlongwei.com:8443/​service/​html/​crawlData?​crawl=demo.a[href]&​url=https://​xlongwei.com|demo.a[href]]]+===== crawl data 规则跑网页 ===== 
 +    ​https://​api.xlongwei.com/​service/​html/​crawlData
  
-获取页面图片[[https://​xlongwei.com/​crawl?​url=html:​https://​xlongwei.com&​step=property:​crawler.crawl.light4j-demo.img[src]|demo.img[src]]]+|crawl |必填,例如:demo.a[href] | 
 +|url |网址,可选 | 
 +|html |网页内容,可选 |
  
-===== js config ===== +|data |数据 ​|
-    https://​api.xlongwei.com/​service/​html/​jsConfig +
-==== 请求 ==== +
-^参数 ^类型 ​ ^说明 ^ +
-|datakey |String ​|data命名,可选 ​| +
-|data |String |json配置,可选 | +
-|jskey |String |js命名,可选 | +
-|js |String |js脚本,可选 | +
-==== 响应 ==== +
-^字段 ^示例 ^ +
-|datakey |data命名 | +
-|data |json配置 | +
-|jskey |js命名 | +
-|js |js配置 | +
-[[https://​api.xlongwei.com:​8443/​service/​html/​jsConfig?​datakey=user.123|查看data配置]]:{id:​123,​name:'​李磊',​sex:​0,​age:​18} +
- +
-[[https://​api.xlongwei.com:​8443/​service/​html/​jsConfig?​jskey=welcome.msg|查看js配置]]:'​您好:'​+data.name+(data.sex==0?'​先生':'​女士'​)+
  
-{{:​api:​pasted:​20190709-201503.png}} +获取页面网址:[[https://​api.xlongwei.com:8443/​service/​html/​crawlData?​crawl=demo.a[href]&​url=https://​xlongwei.com|demo.a[href]]] 
-===== js eval ===== +获取页面图片:[[https://​xlongwei.com/​crawl?​url=html:​https://xlongwei.com&step=property:​crawler.crawl.light4j-demo.img[src]|demo.img[src]]]
-    ​https://​api.xlongwei.com/​service/​html/​jsEval +
-==== 请求 ==== +
-^参数 ^类型 ​ ^说明 ^ +
-|data |String |json命名 | +
-|js |String |js命名 | +
-==== 响应 ==== +
-^字段 ^示例 ^ +
-|result |结果 ​+
-[[https://api.xlongwei.com:​8443/service/html/​jsEval?​data=user.123&js=welcome.msg|执行js脚本]] +
-js脚本示例:注意换行或逗号分隔语句;postman提交地址可以带上data=,此时body正文可以为js脚本。 +
- +
-{{:​api:​pasted:​20190709-201151.png}}+
api/html.1562674571.txt.gz · 最后更改: 2019/07/09 20:16 由 admin