修复商品提取获取不到商品详情页面问题
This commit is contained in:
1 parent
6d22729cff
commit
96cd79f62c
1 file changed
+77
-13
@@ -73,8 +73,9 @@ namespace TemuKJD.PDDForms.ShopForms
|
||||
var prod_detail_rst = GetPddProdDetail(sourceShop, sourceProdId.ToString(), commitId);
|
||||
JObject prod_detail_obj = JObject.Parse(prod_detail_rst);
|
||||
detail_json = JsonHelper.SerializeObject(prod_detail_obj["result"]);
|
||||
|
||||
product = JsonHelper.DeserializeJsonToObject<PDDProductDetailInfo>(detail_json);
|
||||
if (product == null)
|
||||
if (product == null || detail_json.Length < 10)
|
||||
{
|
||||
OnInfoReceived("商品获取失败!商品数据格式获取失败!");
|
||||
return;
|
||||
@@ -183,19 +184,82 @@ namespace TemuKJD.PDDForms.ShopForms
|
||||
OnInfoReceived("商品获取失败!商品详情图获取失败!" + ex.Message);
|
||||
return;
|
||||
}
|
||||
//if (decoration != null && decoration_json.ParseToString().Length < 20)
|
||||
//{
|
||||
// try
|
||||
// {
|
||||
// var prod_detail_decoration_rst = GetPddProdDetail(sourceShop, sourceProdId.ToString(), commitId);
|
||||
// }
|
||||
// catch (Exception ex)
|
||||
// {
|
||||
// OnInfoReceived("商品获取失败!商品详情图获取失败!" + ex.Message);
|
||||
// return;
|
||||
// }
|
||||
//}
|
||||
if (decoration != null && decoration_json.ParseToString().Length < 20)
|
||||
{
|
||||
//try
|
||||
//{ // 获取另一组详情数据,结构和主详情不一样无法通用
|
||||
// var prod_detail_decoration_rst = GetPddProdOnShopDetail(sourceShop, sourceProdId.ToString(), commitId);
|
||||
// JObject prod_detail_decoration_obj = JObject.Parse(prod_detail_decoration_rst);
|
||||
// foreach (JObject ob in prod_detail_decoration_obj["result"]["carousel_gallery"])
|
||||
// {
|
||||
|
||||
// }
|
||||
//}
|
||||
//catch (Exception ex)
|
||||
//{
|
||||
// OnInfoReceived("商品获取失败!商品详情图获取失败!" + ex.Message);
|
||||
// return;
|
||||
//}
|
||||
|
||||
PDDProdDecorationCommitParam decorationParam = new PDDProdDecorationCommitParam();
|
||||
decorationParam.goods_id = product.goods_id;
|
||||
decorationParam.goods_commit_id = commitId.ParseToLong();
|
||||
decorationParam.preview_key = "";
|
||||
decorationParam.decoration_floor_list = new List<decoration_floor_param>();
|
||||
foreach (var gallary in product.galleries)
|
||||
{
|
||||
if (gallary.type != 2)
|
||||
continue;
|
||||
|
||||
var floor_param = new decoration_floor_param();
|
||||
//floor_param.floor_id = 0; // floorItem.floor_id;
|
||||
floor_param.type = "image"; // floorItem.type;
|
||||
floor_param.content_list = new List<decoration_content_param>();
|
||||
//foreach (var c in floorItem.content_list)
|
||||
{
|
||||
var decorationContentParam = new decoration_content_param()
|
||||
{
|
||||
//file_id = c.file_id,
|
||||
img_url = gallary.url, //c.img_url,
|
||||
//height = c.height,
|
||||
//text = c.text,
|
||||
//text_module_details = null,
|
||||
//width = c.width,
|
||||
};
|
||||
//try { decorationContentParam.text_module_details = JsonHelper.DeserializeJsonToObject<text_module_detail_param>(JsonHelper.SerializeObject(c.text_module_details)); }
|
||||
//catch (Exception ex) { }
|
||||
floor_param.content_list.Add(decorationContentParam);
|
||||
}
|
||||
decorationParam.decoration_floor_list.Add(floor_param);
|
||||
}
|
||||
|
||||
var addDecorationRst = save_decoration(shop, decorationParam, product.goods_id.ParseToString(), commitId);
|
||||
Thread.Sleep(Randomx.GetId(10, 50));
|
||||
|
||||
// 第二次获取详情图
|
||||
try
|
||||
{
|
||||
var prod_decoration_rst = GetPddProdDecoration(sourceShop, sourceProdId.ToString(), commitId);
|
||||
if (!prod_decoration_rst.Contains("\"success\":true"))
|
||||
{
|
||||
var errMsg = BaseRegex.GetStringJson(ref prod_decoration_rst, "error_msg");
|
||||
if (string.IsNullOrEmpty(errMsg))
|
||||
errMsg = prod_decoration_rst;
|
||||
OnInfoReceived("商品获取失败!商品详情图获取失败!" + errMsg);
|
||||
return;
|
||||
}
|
||||
JObject prod_decoration_obj = JObject.Parse(prod_decoration_rst);
|
||||
if (!prod_decoration_obj["result"].IsNullOrEmpty())
|
||||
decoration_json = JsonHelper.SerializeObject(prod_decoration_obj["result"]);
|
||||
decoration = JsonHelper.DeserializeJsonToObject<PDDProductDecorationInfo>(decoration_json);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
OnInfoReceived("商品获取失败!商品详情图获取失败!" + ex.Message);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (decoration == null || decoration_json.ParseToString().Length < 20)
|
||||
{
|
||||
|
||||
Reference in new issue
Block a user