From 48e4c4328cfd305d5465b66db11521ff70723683 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 24 十二月 2019 16:59:00 +0800
Subject: [PATCH] 京东内优惠商品爬取,淘宝无推广商品信息获取

---
 fanli/src/main/java/com/yeshi/fanli/controller/TestController.java |   38 ++++++++++++++++++++++++++++++++++++++
 1 files changed, 38 insertions(+), 0 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/TestController.java b/fanli/src/main/java/com/yeshi/fanli/controller/TestController.java
index 6ee75c8..e3ae5aa 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/TestController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/TestController.java
@@ -6,7 +6,9 @@
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.PrintWriter;
+import java.io.UnsupportedEncodingException;
 import java.math.BigDecimal;
+import java.net.URLEncoder;
 import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
@@ -19,6 +21,9 @@
 import javax.script.ScriptEngineManager;
 import javax.servlet.http.HttpServletRequest;
 
+import org.apache.commons.httpclient.HttpClient;
+import org.apache.commons.httpclient.HttpException;
+import org.apache.commons.httpclient.methods.GetMethod;
 import org.jsoup.Jsoup;
 import org.jsoup.nodes.Document;
 import org.jsoup.select.Elements;
@@ -488,4 +493,37 @@
 		} catch (Exception e) {
 		}
 	}
+
+	@RequestMapping("getTaoBaoGoodsDetail")
+	public void getTaoBaoGoodsDetail(Long id, String headers, PrintWriter out) {
+		JSONObject data = new JSONObject();
+		data.put("itemNumId", id + "");
+
+		String url = "";
+		try {
+			url = String.format("https://acs.m.taobao.com/h5/mtop.taobao.detail.getdetail/6.0/?data=%s",
+					URLEncoder.encode(data.toString(), "UTF-8"));
+		} catch (UnsupportedEncodingException e) {
+			e.printStackTrace();
+		}
+
+		HttpClient client = new HttpClient();
+		GetMethod gm = new GetMethod(url);
+		String result = null;
+		try {
+			JSONObject headerJson = JSONObject.fromObject(headers);
+			for (Iterator<String> its = headerJson.keys(); its.hasNext();) {
+				String key = its.next();
+				gm.setRequestHeader(key, headerJson.optString(key));
+			}
+			client.executeMethod(gm);
+			result = gm.getResponseBodyAsString();
+		} catch (HttpException e) {
+			e.printStackTrace();
+		} catch (IOException e) {
+			e.printStackTrace();
+		}
+		out.print(result);
+	}
+
 }

--
Gitblit v1.8.0