From f4a0f2acc63d7785eab108419a4e16f5f688cb95 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期六, 18 一月 2020 12:06:27 +0800
Subject: [PATCH] 用户注册信息
---
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java | 156 +++++++++++++++++++++++++++++++---------------------
1 files changed, 93 insertions(+), 63 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 2cdc138..edf39f4 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
@@ -6,6 +6,7 @@
import java.net.URLDecoder;
import java.net.URLEncoder;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -25,6 +26,7 @@
import org.apache.commons.httpclient.MultiThreadedHttpConnectionManager;
import org.apache.commons.httpclient.methods.GetMethod;
import org.apache.commons.httpclient.params.HttpMethodParams;
+import org.hibernate.cache.spi.NaturalIdCacheKey;
import org.jsoup.Connection;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
@@ -58,7 +60,6 @@
import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult;
import com.yeshi.fanli.entity.taobao.TaoBaoShop;
import com.yeshi.fanli.entity.taobao.TaoBaoUnionConfig;
-import com.yeshi.fanli.entity.taobao.dataoke.DaTaoKeDetail;
import com.yeshi.fanli.entity.taobao.dataoke.DaTaoKeDetailV2;
import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
import com.yeshi.fanli.log.LogHelper;
@@ -789,7 +790,7 @@
private static TaoBaoGoodsBriefExtra loadYuShouInfo(TaoBaoGoodsBriefExtra extra, TaoBaoGoodsBrief goods) {
if (goods != null && extra != null) {
if (isYUShou(goods)) {// 棰勫敭鍟嗗搧
-// extra.setZkPrice(new BigDecimal(goods.getPresaleDeposit()));
+ // extra.setZkPrice(new BigDecimal(goods.getPresaleDeposit()));
// 棰勫敭
if (extra.getLabels() == null)
extra.setLabels(new ArrayList<>());
@@ -1074,23 +1075,18 @@
return tg;
}
- public static TaoBaoGoodsBrief getTaoBaoGoodsBrief(String id) {
- Map<String, String> params = new HashMap<String, String>();
- params.put("q", String.format("http://item.taobao.com/item.htm?id=%s", id));
- params.put("_t", System.currentTimeMillis() + "");
- params.put("auctionTag", "");
- params.put("perPageSize", 40 + "");
- params.put("t", System.currentTimeMillis() + "");
- String result = TaoBaoHttpUtil.get(SEARCH_URL, params);
- result = result.replace("</span>", "").replace("<span class=H>", "");
- TaoBaoSearchResult presult = parseTaoBao(result);
- if (presult != null && presult.getTaoBaoGoodsBriefs().size() > 0) {
- // TaoBaoGoodsBrief taoBaoGoodsBrief =
- // presult.getTaoBaoGoodsBriefs().get(0);
-
- return presult.getTaoBaoGoodsBriefs().get(0);
- } else
- return null;
+ /**
+ * 鑾峰彇鏈弬涓庢帹骞跨殑娣樺疂鍟嗗搧璇︽儏
+ * @Title: getTaoBaoGoodsBrief
+ * @Description:
+ * @param id
+ * @return
+ * TaoBaoGoodsBrief 鍖呭惈锛堟爣棰樹笌鍥剧墖锛�
+ * @throws
+ */
+ public static TaoBaoGoodsBrief getTaoBaoGoodsBriefNotInPub(Long id) {
+ TaoBaoGoodsBrief tb = TaoBaoUtil.getTmallGoodsInfo(id+"");
+ return tb;
}
public static List<String> getSuguestSearch(String key) {
@@ -1756,30 +1752,6 @@
return taoBaoGoods;
}
- public static TaoBaoGoodsBrief convert(DaTaoKeDetail detail) {
- TaoBaoGoodsBrief taoBaoGoods = new TaoBaoGoodsBrief();
- taoBaoGoods.setAuctionId(detail.getGoodsId());
- taoBaoGoods.setBiz30day(detail.getSalesNum());
- taoBaoGoods.setCouponAmount(detail.getQuanPrice());
- taoBaoGoods.setCouponInfo(String.format("婊�%s鍏冨噺%s鍏�", detail.getQuanCondition(),
- MoneyBigDecimalUtil.getWithNoZera(detail.getQuanPrice())));
- taoBaoGoods.setCouponLeftCount(detail.getQuanSurplus());
- taoBaoGoods.setCouponStartFee(new BigDecimal(detail.getQuanCondition()));
- if (detail.getQuanReceive() != null)
- taoBaoGoods.setCouponTotalCount(detail.getQuanSurplus() + detail.getQuanReceive());
- taoBaoGoods.setPictUrl(detail.getPic());
- taoBaoGoods.setPictUrlWhite(detail.getPic());
- taoBaoGoods.setSellerId(detail.getSellerId());
- taoBaoGoods.setShopTitle("");
- taoBaoGoods.setTitle(detail.getdTitle());
- taoBaoGoods.setUserType(detail.getIsTmall());
- taoBaoGoods.setZkPrice(detail.getOrgPrice());
- taoBaoGoods.setTkRate(detail.getCommission());
- taoBaoGoods.setTkCommFee(new BigDecimal("0"));
- taoBaoGoods.setState(0);
- return taoBaoGoods;
- }
-
public static TaoBaoGoodsBrief convert(DaTaoKeDetailV2 detail) {
TaoBaoGoodsBrief taoBaoGoods = new TaoBaoGoodsBrief();
taoBaoGoods.setAuctionId(detail.getGoodsId());
@@ -1842,40 +1814,68 @@
return url;
}
+ /**
+ * 鑾峰彇娣樺疂鐨勫晢鍝佽鎯�
+ *
+ * @param actionId
+ * @return
+ */
public static TaoBaoGoodsBrief getSimpleGoodsBrief(Long actionId) {
JSONObject data = new JSONObject();
data.put("itemNumId", actionId + "");
String url = "";
try {
- url = String.format("https://acs.m.taobao.com/h5/mtop.taobao.detail.getdetail/6.0/?data=%s",
+ url = String.format(
+ "http://acs.m.taobao.com/h5/mtop.taobao.detail.getdetail/6.0/?data=%s&qq-pf-to=pcqq.group",
URLEncoder.encode(data.toString(), "UTF-8"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
- String result = HttpUtil.get(url);
+ String result = null;
+ try {
+ Connection.Response doc = Jsoup.connect(url).ignoreContentType(true).timeout(1000 * 10)
+ .userAgent(
+ "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36 Edge/18.18362")
+ .header("Accept", "text/html, application/xhtml+xml, application/xml; q=0.9, */*; q=0.8")
+ .header("Accept-Language", "zh-CN").header("Host", "acs.m.taobao.com")
+ .header("Upgrade-Insecure-Requests", "1")
+ .header("Cookie",
+ "_cc_=VFC%2FuZ9ajQ%3D%3D; isg=BLu7TvdFYk89dV4DMXO7XNRGU58lEM8SDjV-ja14l7rRDNvuNeBfYtlOJmznNycK; thw=cn; miid=1490566681358073134; x=e%3D1%26p%3D*%26s%3D0%26c%3D0%26f%3D0%26g%3D0%26t%3D0%26__ll%3D-1%26_ato%3D0; cna=ZW8rFCpNP1gCAWpXAiKqMzqi; tracknick=tb23001560; l=cBxbffilq1UJdAFCBOCanurza77OSdAYYuPzaNbMi_5NE6T1BR7Ok6G1vF96VsWdOW8B4NSiTkp9-etkZ3Znq9SpXUJ1.; tg=0; _w_app_lg=19; WAPFDFDTGFG=%2B4cMKKP%2B8PI%2BtNYpkiAuTPLkiJB1kcwi")
+ .execute();
+ result = doc.body();
+ } catch (Exception e1) {
+ e1.printStackTrace();
+ }
+
JSONObject resultOBJ = JSONObject.fromObject(result);
if (resultOBJ.optJSONObject("data") != null) {
data = resultOBJ.optJSONObject("data");
- JSONObject item = data.optJSONObject("item");
- JSONObject seller = data.optJSONObject("seller");
- TaoBaoGoodsBrief goods = new TaoBaoGoodsBrief();
- goods.setAuctionId(item.optLong("itemId"));
- goods.setTitle(item.optString("title"));
- if (item.optJSONArray("images") != null && item.optJSONArray("images").size() > 0) {
- String picture = item.optJSONArray("images").optString(0);
- goods.setPictUrl(picture.startsWith("http") ? picture : "https:" + picture);
+ if (data != null) {
+ JSONObject item = data.optJSONObject("item");
+ if (item != null) {
+ JSONObject seller = data.optJSONObject("seller");
+ TaoBaoGoodsBrief goods = new TaoBaoGoodsBrief();
+ goods.setTitle(item.optString("title"));
+ goods.setAuctionId(item.optLong("itemId"));
+ goods.setTitle(item.optString("title"));
+ if (item.optJSONArray("images") != null && item.optJSONArray("images").size() > 0) {
+ String picture = item.optJSONArray("images").optString(0);
+ goods.setPictUrl(picture.startsWith("http") ? picture : "https:" + picture);
+ }
+ if (seller != null) {
+ goods.setSellerId(seller.optLong("shopId"));
+ String shopType = seller.optString("shopType");
+ if ("B".equalsIgnoreCase(shopType)) {
+ goods.setUserType(1);
+ } else
+ goods.setUserType(0);
+ goods.setShopTitle(seller.optString("shopName"));
+ }
+ return goods;
+ }
}
- goods.setSellerId(seller.optLong("shopId"));
- String shopType = seller.optString("shopType");
- if ("B".equalsIgnoreCase(shopType)) {
- goods.setUserType(1);
- } else
- goods.setUserType(0);
-
- goods.setShopTitle(seller.optString("shopName"));
- return goods;
}
return null;
}
@@ -2111,7 +2111,7 @@
Matcher m = r.matcher(str);
while (m.find()) {
String group = m.group(0);
- if (!StringUtil.isNullOrEmpty(group))
+ if (!StringUtil.isNullOrEmpty(group) && group.length() >= 10)
return group;
}
return null;
@@ -2124,4 +2124,34 @@
return false;
}
+ /**
+ * 浠庢枃鏈腑鎻愬彇娣樺彛浠�
+ * @Title: getTokenListFromText
+ * @Description:
+ * @param str
+ * @return
+ * List<String> 杩斿洖绫诲瀷
+ * @throws
+ */
+ public static List<String> getTokenListFromText(String str) {
+ String[] marks = new String[] { "鈧�", "楼", "锟�", "鈧�", "\\$", "鈧�", "垄", "鈧�" };
+
+ return getTokenListFromText(str, Arrays.asList(marks));
+ }
+
+ public static List<String> getTokenListFromText(String str, List<String> markList) {
+ List<String> expressList = new ArrayList<>();
+ for (String st : markList) {
+ expressList.add(String.format("(%s{1}[A-Za-z0-9]{11,13}+%s{1})", st, st));
+ }
+ String pattern = StringUtil.concat(expressList, "|");
+ Pattern r = Pattern.compile(pattern);
+ Matcher m = r.matcher(str);
+ List<String> urlList = new ArrayList<>();
+ while (m.find()) {
+ urlList.add(m.group());
+ }
+ return urlList;
+ }
+
}
--
Gitblit v1.8.0