提交 dd27e692 authored 作者: 梁业锦's avatar 梁业锦 💬

封装了一个获取订单链接的方法

上级 f2d64b98
差异被折叠。
package com.diaoyun.zion.master.util;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import org.apache.commons.text.StringEscapeUtils;
import org.jsoup.Jsoup;
......@@ -221,11 +222,26 @@ public class JsoupUtil {
}
/**
* 获取变量的值
*
* 根据script id获取内容
* @param content
* @param id
* @return
*/
public static JSONObject getScriptContentById(String content, String id) {
Document document = Jsoup.parse(content);
Element element = document.getElementById(id);
String dataStr=element.data();
JSONObject dataMap= JSONObject.fromObject(dataStr);
return dataMap;
}
/**
* 获取指定网页内的 script 标签的 Json 格式的数据变量
*
* @param content 网页内容
* @param variableName 变量名
* @return 变量内的 Json 数据
*/
public static JSONObject getItemDetailByName(String content, String variableName) {
String detailStr = getScriptContent(content, variableName);
int firstBrackets=detailStr.indexOf("{");
......@@ -236,17 +252,32 @@ public class JsoupUtil {
}
/**
* 根据script id获取内容
* @param content
* @param id
* 获取指定网页内容的 script 标签内的变量值</br>
* 仅限于格式:</br>
* window.produictId = 290000;
* @param content 网页内容
* @param variableName 变量名
* @return 变量的值
*/
public static String getScriptTagVariableContent(String content, String variableName) {
String detailStr = getScriptContent(content, variableName);
String[] spilt = detailStr.split("=");
return spilt[1].replaceAll(";", "").trim();
}
/**
* 获取订单返回的 Json 数据的 href 节点的地址值
* @param dataMap
* @return
*/
public static JSONObject getScriptContentById(String content, String id) {
Document document = Jsoup.parse(content);
Element element = document.getElementById(id);
String dataStr=element.data();
JSONObject dataMap= JSONObject.fromObject(dataStr);
return dataMap;
public static Map<String, String> getOrderHref(String dataMap) {
Map<String, String> map = new HashMap<>(5);
JSONArray dataArr = JSONObject.fromObject(dataMap).getJSONArray("links");
for (int i = 0; i < dataArr.size(); i++) {
JSONObject dataObj = dataArr.getJSONObject(i);
map.put(dataObj.getString("rel"), dataObj.getString("href"));
}
return map;
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论