public static int GetQTKData(out int success, out int error) { DateTime dtStart = DateTime.Now; string appkey = ConfigService.QTKAppKey; int maxPage = 120; long result = 0; success = 0; error = 0; string url = "http://openapi.qingtaoke.com/qingsoulist?sort=2&page={0}&app_key=" + appkey + "&v=1.0"; string response = ""; List <Product_QTK> pList = new List <Product_QTK>(); Product_QTK oldProduct = new Product_QTK(); JObject first; JObject data; for (int i = 1; i <= maxPage; i++) { response = RequestUtility.GetData(string.Format(url, i)); if (!string.IsNullOrEmpty(response)) { first = JObject.Parse(response); if (first["er_code"] != null && Convert.ToInt32(first["er_code"]) == (int)Product_QTK_Code.Success) { data = JObject.Parse(first["data"].ToString()); pList = JsonUtility.JsonDeserialize <Product_QTK>(data["list"].ToString()); foreach (Product_QTK item in pList) { result = 0; if (item != null && item.goods_id > 0) { item.addedtime = DateTime.Now; oldProduct = GetInfo(item.goods_id); if (oldProduct != null) { result = Update(item); } else { result = Add(item); } if (result > 0) { success++; } else { error++; } } } } } } return(0); }
public static int TaobaoAppInput(string text, int cid) { text = text.Trim('\n'); Regex titleReg = new Regex("(?<=.?).+(?=【包邮】)"); Regex priceReg = new Regex("(?<=【在售价】).+(?=元)"); Regex price2Reg = new Regex("(?<=【券后价】).+(?=元)"); Regex urlReg = new Regex("(?<=【下单链接】).+(?=\\n)"); Regex cmdReg = new Regex("(?<=复制这条信息,).+(?=,)"); Regex imgReg = new Regex("(?<=var extraData = {\"pic\":\").+(?=\",\"title)"); Regex couponLinkReg = new Regex("(?<=var url = ').+(?=';)"); try { string shoplink = urlReg.Match(text).Value; if (string.IsNullOrEmpty(shoplink)) { return(1); } string response = RequestUtility.GetData(shoplink); if (string.IsNullOrEmpty(response)) { return(2); } string imgpath = imgReg.Match(response).Value; if (string.IsNullOrEmpty(imgpath)) { return(3); } imgpath = "https:" + imgpath + "_300x300"; decimal price2 = Convert.ToDecimal(price2Reg.Match(text).Value); Product_MY product = new Product_MY(); product.AddedID = ConfigService.LoginUser == null ? 1 : ConfigService.LoginUser.ID; product.AddedTime = DateTime.Now; product.AddedType = 3; product.ClickCount = 0; product.CouponCommand = cmdReg.Match(text).Value; product.CouponCount = 100; product.CouponEndTime = DateTime.Now.AddDays(2); product.CouponLink = couponLinkReg.Match(response).Value; product.PPrice = Convert.ToDecimal(priceReg.Match(text).Value); product.CouponMoney = product.PPrice - price2; product.CouponRemain = 100; product.CouponShortLink = shoplink; product.CouponStartTime = DateTime.Now; product.Desc = ""; product.DescImgs = ""; product.IsBig = true; product.PCID = cid; product.PCommission = 0; product.PID = 0; product.PImgUrls = imgpath; product.PIntro = ""; product.PlanID = ConfigService.LoginUser == null ? "" : ConfigService.LoginUser.PID; product.PLink = product.CouponLink; product.PRate = 0; product.PSales = 0; product.PTitle = titleReg.Match(text).Value; product.Remark = ""; if (string.IsNullOrEmpty(product.PTitle) || string.IsNullOrWhiteSpace(product.CouponCommand) || !product.PPrice.HasValue || !product.CouponMoney.HasValue || string.IsNullOrWhiteSpace(product.CouponShortLink)) { return(4); } IQuery <Product_MY> q = MySqlHelper.context.Query <Product_MY>(); var pmy = q.Where(p => p.CouponCommand == product.CouponCommand || p.CouponShortLink == product.CouponShortLink).FirstOrDefault(); if (pmy != null) { product.ID = pmy.ID; MySqlHelper.context.Update(product); } else { Product_MY newP = MySqlHelper.context.Insert(product); } } catch (Exception ex) { ErrorLog.WriteTextLog("TaobaoAppInput", ex.ToString(), DateTime.Now); return(5); } return(0); }