Commit 7ad48f6b by 岳巧源

update ext attr

parent ab61b02c
Showing with 61 additions and 0 deletions
......@@ -7,6 +7,7 @@ import sys
import pymysql
import time
import json
import redis
config_dev = {
"mysql": {
......@@ -382,6 +383,64 @@ def update_vc_ext_attr(conf):
db.commit()
print(insert_sql % (class_id, attr_id, attr_name, unit, enum_value, input_type, is_required, status, platform, create_time))
def update_vc_ext_redis(conf: dict):
"""
更新redis中的拓展参数
"""
host = conf["mysql"]["host"]
port = conf["mysql"]["port"]
user = conf["mysql"]["user"]
password = conf["mysql"]["password"]
database = conf["mysql"]["database"]
method_name = "jingdong.vc.item.extProps.find"
token = "845ce8478b074103b9e78a769d5fa4831y2u"
app_key = "CA52430E90209F51D8F5D7B615DDE9AD"
app_secret = "c92691b2379c48de87e699c4c2f7fb32"
select_sql = "select class_id from lie_shop_class where platform = 1"
db = pymysql.connect(host=host, port=port, user=user, password=password, database=database)
cursor = db.cursor()
cursor.execute(query=select_sql)
db_results = cursor.fetchall()
class_attr_mapping = {}
"""
更新前预清空redis
"""
redis_host = conf["redis"]["host"]
redis_port = conf["redis"]["port"]
redis_password = conf["redis"]["password"]
redis_db = redis.Redis(host=redis_host, port=redis_port, password=redis_password)
redis_db.delete("jd_ext_attr")
for i in range(len(db_results)):
class_id = db_results[i][0]
class_attr_mapping[class_id] = []
param = {
"category_leaf_id": class_id,
}
ans = request_to_jd_vc(method_name=method_name, token=token, app_key=app_key, app_secret=app_secret,
param=param)
print("request to jd ....")
if "result" not in ans["jingdong_vc_item_extProps_find_responce"]["jos_result_dto"]:
continue
jd_results = ans["jingdong_vc_item_extProps_find_responce"]["jos_result_dto"]["result"]
for j in range(len(jd_results)):
result = jd_results[j]
attr_id = result["att_id"]
class_attr_mapping[class_id].append(attr_id)
for class_id in class_attr_mapping:
key = str(class_id)
attr_ids = class_attr_mapping[class_id]
if len(attr_ids) == 0:
continue
value = json.dumps(attr_ids, ensure_ascii=False)
redis_db.hset(name="jd_ext_attr", key=key, value=value)
print("jd_ext_attr", key, value)
"""
执行命令
线上:python3 crontab.py prod
......@@ -405,6 +464,8 @@ if __name__ == '__main__':
print("========================> 参数更新完毕")
update_vc_ext_attr(config)
print("========================> 拓展参数处理完毕")
update_vc_ext_redis(config)
print("========================> redis中拓展参数更新完毕")
handle_vc_unit(config)
print("========================> 单位处理完毕")
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment