|
@@ -28,7 +28,7 @@ HEADERS = {
|
|
|
# "sign": "3c5028da758dc416455f575334cadaab",
|
|
# "sign": "3c5028da758dc416455f575334cadaab",
|
|
|
# "x-token": "782a2174df1a19aa26904dad1d347c97",
|
|
# "x-token": "782a2174df1a19aa26904dad1d347c97",
|
|
|
"client": "yingyongbao",
|
|
"client": "yingyongbao",
|
|
|
- "appversion": "2.6.20",
|
|
|
|
|
|
|
+ "appversion": "2.1.10",
|
|
|
# "nonce": "507060933e1e0585",
|
|
# "nonce": "507060933e1e0585",
|
|
|
"deviceid": "null",
|
|
"deviceid": "null",
|
|
|
"jrd": "100d85590861f713a85",
|
|
"jrd": "100d85590861f713a85",
|
|
@@ -441,6 +441,7 @@ def get_player_list(log, no, sql_pool, x_token):
|
|
|
:param sql_pool:
|
|
:param sql_pool:
|
|
|
:param no:
|
|
:param no:
|
|
|
:param x_token:
|
|
:param x_token:
|
|
|
|
|
+ :return: True表示成功获取并保存数据,False表示商品不存在或数据为空(状态已内部处理)
|
|
|
"""
|
|
"""
|
|
|
log.debug(f'-------------{inspect.currentframe().f_code.co_name}-- get {no} ---------------')
|
|
log.debug(f'-------------{inspect.currentframe().f_code.co_name}-- get {no} ---------------')
|
|
|
url = "https://api.xingchao6.com/AppClient/v1/product/order/km/list/page"
|
|
url = "https://api.xingchao6.com/AppClient/v1/product/order/km/list/page"
|
|
@@ -477,7 +478,7 @@ def get_player_list(log, no, sql_pool, x_token):
|
|
|
if response.json().get("code") == 500:
|
|
if response.json().get("code") == 500:
|
|
|
log.error(f"{no}商品不存在, 更改状态为2..........")
|
|
log.error(f"{no}商品不存在, 更改状态为2..........")
|
|
|
sql_pool.update_one("UPDATE xingchao_product_record SET player_stats = 2 WHERE no = %s", (no,))
|
|
sql_pool.update_one("UPDATE xingchao_product_record SET player_stats = 2 WHERE no = %s", (no,))
|
|
|
- break
|
|
|
|
|
|
|
+ return False
|
|
|
|
|
|
|
|
data_list = resp_json.get("data", {}).get("list", [])
|
|
data_list = resp_json.get("data", {}).get("list", [])
|
|
|
if not data_list:
|
|
if not data_list:
|
|
@@ -485,7 +486,7 @@ def get_player_list(log, no, sql_pool, x_token):
|
|
|
|
|
|
|
|
# data_list为空 更改状态为3 未上传
|
|
# data_list为空 更改状态为3 未上传
|
|
|
sql_pool.update_one("UPDATE xingchao_product_record SET player_stats = 3 WHERE no = %s", (no,))
|
|
sql_pool.update_one("UPDATE xingchao_product_record SET player_stats = 3 WHERE no = %s", (no,))
|
|
|
- break
|
|
|
|
|
|
|
+ return False
|
|
|
|
|
|
|
|
player_data_list = []
|
|
player_data_list = []
|
|
|
for item in data_list:
|
|
for item in data_list:
|
|
@@ -538,7 +539,7 @@ def get_player_list(log, no, sql_pool, x_token):
|
|
|
|
|
|
|
|
if not next_id:
|
|
if not next_id:
|
|
|
logger.debug("next_id is not, get_player_list end")
|
|
logger.debug("next_id is not, get_player_list end")
|
|
|
- break
|
|
|
|
|
|
|
+ return True
|
|
|
|
|
|
|
|
# 设置等待时间 避免查询太频繁
|
|
# 设置等待时间 避免查询太频繁
|
|
|
time.sleep(random.uniform(0.5, 1))
|
|
time.sleep(random.uniform(0.5, 1))
|
|
@@ -732,12 +733,14 @@ def xc_main(log):
|
|
|
sql_player_list = [i[0] for i in sql_player_list]
|
|
sql_player_list = [i[0] for i in sql_player_list]
|
|
|
for noid in sql_player_list:
|
|
for noid in sql_player_list:
|
|
|
try:
|
|
try:
|
|
|
- get_player_list(log, noid, sql_pool, x_token)
|
|
|
|
|
|
|
+ success = get_player_list(log, noid, sql_pool, x_token)
|
|
|
|
|
|
|
|
- # 保存完成 更改状态为1
|
|
|
|
|
- sql_pool.update_one("UPDATE xingchao_product_record SET player_stats = 1 WHERE no = %s", (noid,))
|
|
|
|
|
|
|
+ # 只有成功获取并保存数据时才更改状态为1
|
|
|
|
|
+ if success:
|
|
|
|
|
+ sql_pool.update_one("UPDATE xingchao_product_record SET player_stats = 1 WHERE no = %s", (noid,))
|
|
|
except Exception as e:
|
|
except Exception as e:
|
|
|
log.error(f"Request get_player_list error: {e}")
|
|
log.error(f"Request get_player_list error: {e}")
|
|
|
|
|
+ # 异常情况(包括token过期等)改为状态2
|
|
|
sql_pool.update_one("UPDATE xingchao_product_record SET player_stats = 2 WHERE no = %s", (noid,))
|
|
sql_pool.update_one("UPDATE xingchao_product_record SET player_stats = 2 WHERE no = %s", (noid,))
|
|
|
except Exception as e:
|
|
except Exception as e:
|
|
|
log.error(f"Request player list error: {e}")
|
|
log.error(f"Request player list error: {e}")
|