From e265881fa0d83b8767cadf7b1c83c71b80b5bb6d Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期二, 17 十二月 2019 10:39:24 +0800 Subject: [PATCH] 隐藏好店 --- fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java | 79 +++++++++++++++++++++++++++++++++++++++ 1 files changed, 79 insertions(+), 0 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java index 4140021..51bdc18 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java @@ -29,6 +29,7 @@ import org.yeshi.utils.HttpUtil; import com.yeshi.fanli.dto.GoodsClassDTO; +import com.yeshi.fanli.dto.douyin.DouYinGoods; import com.yeshi.fanli.dto.jd.JDCommissionInfo; import com.yeshi.fanli.dto.jd.JDCouponInfo; import com.yeshi.fanli.dto.jd.JDPingouInfo; @@ -625,6 +626,80 @@ return null; } + + /** + * 閫氳繃閾炬帴id + * @param url + * @return + */ + public static String getJDGoodsIdByWeiXin(String url) { + if (StringUtil.isNullOrEmpty(url)) + return null; + + try { + String id = null; + int indexOf = url.indexOf("?"); + url = url.substring(indexOf + 1, url.length()-1); + String[] temp = url.split("&"); + for (int i =0; i < temp.length; i ++) { + String content = temp[i]; + if (content.startsWith("sku")) { + id = content.split("=")[content.split("=").length-1]; + break; + } + } + return id; + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + + + /** + * 鏍规嵁 u.jd鐭繛鎺ヨ幏鍙栫湡瀹炵殑鍟嗗搧id + * @param url + * @return + */ + public static String getJDGoodsIdByUJD(String url) { + try { + String body = HttpUtil.get(url); + Document doc = Jsoup.parse(body); + Elements els = doc.getElementsByTag("script"); + for (int i = 0; i < els.size(); i++) { + String content = els.get(i).html(); + if (content.indexOf("var hrl") > -1) { + ScriptEngineManager manager = new ScriptEngineManager(); + ScriptEngine engine = manager.getEngineByName("javascript"); + + int indexOf = content.indexOf("var hrl"); + content = content.substring(indexOf, content.length()); + + int indexOf2 = content.indexOf(";"); + content = content.substring(0, indexOf2+1); + + String js = "function getData(){return JSON.stringify(hrl);}" + content; + + engine.eval(js); + if (engine instanceof Invocable) { + Invocable in = (Invocable) engine; + String data = in.invokeFunction("getData").toString(); + String link = data.substring(1, data.length()-1); + + String realLink = HttpUtil.getLocation(link); + realLink = realLink.substring(realLink.indexOf("sku=") + 4, realLink.length()); + return realLink.substring(0, realLink.indexOf("&")); + } + } + } + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + + + /** * 鏌ヨ澶╃尗鍟嗗搧鍥剧墖銆佹爣棰� * @@ -814,5 +889,9 @@ } return getShowCouponInfo(goods.getCouponInfoList(), price); } + + + + } -- Gitblit v1.8.0