From ee88b54979c633a4ade518d4c124a2d07d378562 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期五, 11 十月 2019 10:56:18 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div

---
 fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java |   69 ++++++++++++++++++++++++++++++++++
 1 files changed, 69 insertions(+), 0 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java
index da901df..15f1e5e 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java
@@ -3,6 +3,7 @@
 import java.io.UnsupportedEncodingException;
 import java.lang.reflect.Type;
 import java.math.BigDecimal;
+import java.net.URLDecoder;
 import java.net.URLEncoder;
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -21,7 +22,9 @@
 import javax.xml.parsers.DocumentBuilderFactory;
 
 import org.apache.commons.httpclient.HttpClient;
+import org.apache.commons.httpclient.MultiThreadedHttpConnectionManager;
 import org.apache.commons.httpclient.methods.GetMethod;
+import org.apache.commons.httpclient.params.HttpMethodParams;
 import org.jsoup.Connection;
 import org.jsoup.Jsoup;
 import org.jsoup.nodes.Document;
@@ -1334,6 +1337,41 @@
 		return taoBaoGoodsBrief;
 	}
 
+	public static String getGoodsIdByPhoneShareUrl(String burl) {
+		try {
+			Connection connect = Jsoup.connect(burl);
+			Document document = connect.get();
+			org.jsoup.nodes.Element element = document.getElementsByTag("head").get(0).getElementsByTag("Script")
+					.get(1);
+			String html = element.toString();
+			int index = html.indexOf("var url = ");
+			int endIndex = html.lastIndexOf("'");
+			html = html.substring(index, endIndex);
+			int index2 = html.indexOf("'");
+			html = html.substring(index2 + 1);
+			int indexId = html.indexOf("id=");
+			String id = "";
+			if (html.contains("a.m.taobao.com")) {
+				indexId = html.indexOf("com/i");
+				html = html.substring(indexId);
+				html = html.substring(5, html.indexOf("."));
+				id = html;
+			} else {
+				String reg = "[?|&]{1}[i]{1}[d]{1}[=]{1}\\d+[&]?";
+				Pattern p = Pattern.compile(reg);
+				Matcher matcher = p.matcher(html);
+				if (matcher.find()) {
+					id = matcher.group();
+				}
+				id = id.substring(id.indexOf("=") + 1, id.lastIndexOf("&"));
+			}
+			return id;
+		} catch (Exception e) {
+			LogHelper.error("鏃犳硶瑙f瀽鍒版窐瀹濆晢鍝両D:" + burl);
+			return null;
+		}
+	}
+	
 	/**
 	 * 鑾峰彇鍟嗗搧鐨勭敤鎴峰垎鎴愭瘮渚�
 	 * 
@@ -1964,6 +2002,37 @@
 		}
 		return taoBaoGoodsBrief;
 	}
+	
+	
+	
+	/**
+	 * 鎶栭煶杩斿埄local 鑾峰彇鐪熷疄娣樺疂閾炬帴
+	 * @param url https://s.click.taobao.com/t?e=m%3D2%26s%3DT9DFpHQCT7Rw4vFB6t2Z2ueEDrYVVa64XoO8tOebS+dRAdhuF14FMR8
+	 * @return
+	 */
+	public static String getRealUrl(String url) {
+		if (StringUtil.isNullOrEmpty(url))
+			return null;
+		
+		try {
+			HttpClient client = new HttpClient(new MultiThreadedHttpConnectionManager());
+			client.getHttpConnectionManager().getParams().setConnectionTimeout(10000);
+			client.getParams().setParameter(HttpMethodParams.USER_AGENT,"Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)"); // 璁╂湇鍔″櫒璁や负鏄疘E
+			GetMethod get = new GetMethod(url);
+			get.setFollowRedirects(false); // 绂佹鑷姩閲嶅畾鍚�
+			int iGetResultCode = client.executeMethod(get);
+			String location = get.getResponseHeader("location").getValue(); // 鎵撳嵃鍦板潃
+			GetMethod get2 = new GetMethod(URLDecoder.decode(location.split("tu=")[1]));
+			get2.addRequestHeader("Referer", location);
+			get2.setFollowRedirects(false); // 绂佹鑷姩閲嶅畾鍚�
+			int iGetResultCode2 = client.executeMethod(get2);
+			return get2.getResponseHeader("location").getValue(); // 鐪熷疄鍦板潃
+		} catch (Exception ex) {
+			ex.printStackTrace();
+		} 
+		return null;
+	}
+	
 
 	/**
 	 * 娣樺彛浠よ繃婊�

--
Gitblit v1.8.0