{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# 获取储值卡现有属性信息,组合生成修改需要的载荷内容" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{'code': 200, 'data': None, 'errInfo': None, 'ext': None, 'info': None, 'message': '', 'msg': 'success', 'traceId': ''}\n", "{'code': 200, 'data': None, 'errInfo': None, 'ext': None, 'info': None, 'message': '', 'msg': 'success', 'traceId': ''}\n", "{'code': 200, 'data': None, 'errInfo': None, 'ext': None, 'info': None, 'message': '', 'msg': 'success', 'traceId': ''}\n", "{'code': 200, 'data': None, 'errInfo': None, 'ext': None, 'info': None, 'message': '', 'msg': 'success', 'traceId': ''}\n", "{'code': 200, 'data': None, 'errInfo': None, 'ext': None, 'info': None, 'message': '', 'msg': 'success', 'traceId': ''}\n", "{'code': 200, 'data': None, 'errInfo': None, 'ext': None, 'info': None, 'message': '', 'msg': 'success', 'traceId': ''}\n", "{'code': 200, 'data': None, 'errInfo': None, 'ext': None, 'info': None, 'message': '', 'msg': 'success', 'traceId': ''}\n", "{'code': 200, 'data': None, 'errInfo': None, 'ext': None, 'info': None, 'message': '', 'msg': 'success', 'traceId': ''}\n", "{'code': 200, 'data': None, 'errInfo': None, 'ext': None, 'info': None, 'message': '', 'msg': 'success', 'traceId': ''}\n" ] } ], "source": [ "# # 获取储值卡现有属性信息,组合生成修改需要的载荷内容\n", "import pandas as pd\n", "import time\n", "import requests\n", "import json\n", "import datetime\n", "\n", "cookies_str = 'marketingSESSIONID=0082626e-060f-46e6-acc3-f220b7439091; gr_user_id=408fef1a-77ed-4e74-8f1e-31dde3446f2e; erpLanguage=zh-CN; prodOrg=11240984669918116047; unp=15852100371620065343; un=15852100371620065343; _up=-NillNN-qyBEJ--t3vnSknvoOF53yPOMsM0G1Ho5WOddUPTCo5rQjaZJ9Q3d-WrAAGgt60MgQHajHWBHMKKxj0CuWypi1JgKCFP1EPEk-HbqFvYWrYkh0wAO_PJRv-ZNHu3M-GTc1p2zFHeorepUj-kakFDGPRdsrEj9zBy995e3SxM.; sensorsdata2015jssdkcross=%7B%22distinct_id%22%3A%2215852100371620065343%22%2C%22first_id%22%3A%221750b4690af1f6-089dd3a4874eb8-3d634f03-1327104-1750b4690b09d0%22%2C%22props%22%3A%7B%22%24latest_traffic_source_type%22%3A%22%E7%9B%B4%E6%8E%A5%E6%B5%81%E9%87%8F%22%2C%22%24latest_search_keyword%22%3A%22%E6%9C%AA%E5%8F%96%E5%88%B0%E5%80%BC_%E7%9B%B4%E6%8E%A5%E6%89%93%E5%BC%80%22%2C%22%24latest_referrer%22%3A%22%22%7D%2C%22%24device_id%22%3A%221750b4690af1f6-089dd3a4874eb8-3d634f03-1327104-1750b4690b09d0%22%7D; tmall=false; Hm_lvt_25f5e7a3a5dbb293d7dd35d5f1be8d0a=1724314408,1724655996,1724923121,1725242343; HMACCOUNT=B4D963E4DD28B6C3; Hm_lpvt_25f5e7a3a5dbb293d7dd35d5f1be8d0a=1725242520'\n", "\n", "cookies_str = cookies_str.encode('utf-8').decode('latin-1')\n", "\n", "cookie_dict = {item.split('=')[0]: item.split('=')[1]\n", " for item in cookies_str.split('; ')}\n", "headers = {\n", " 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36 Edg/95.0.1020.40',\n", " \"Content-Type\": \"application/json\",\n", "}\n", "\n", "try:\n", " df = pd.read_excel(r'C:\\Users\\admin\\Desktop\\会员卡信息 (鸿宇).xlsx',sheet_name='会员卡详情',dtype='string')\n", " for da in df.values:\n", " # 获取储值卡属性信息\n", " url_version = 'https://yunxiu.f6car.cn/marketing/card/detail/'+da[0]\n", " res_version = requests.get(url_version,cookies=cookie_dict,headers=headers)\n", " res_version = res_version.json()\n", " # 获取储值卡属性信息\n", " url = 'https://yunxiu.f6car.cn/macan/card/entity/czk/queryWithBenefit?pkId='+da[0]\n", " res = requests.get(url,cookies=cookie_dict,headers=headers)\n", " res = res.json()\n", " # 组合载荷内容\n", " # 时间戳转格式\n", " timestamp = res['info']['entityDTO']['endDate'] / 1000\n", " dt_object = datetime.datetime.fromtimestamp(timestamp)\n", " endDate = dt_object.strftime(\"%Y-%m-%d %H:%M:%S\")\n", " # 提取carInfoList\n", " carInfoList = []\n", " for carInfo in res['info']['carInfoList']:\n", " List = {\n", " \"idCar\": carInfo['idCar'],\n", " \"idCustomer\": carInfo['idCustomer']\n", " }\n", " carInfoList.append(List)\n", " # 提取cardEntityBusinessList\n", " cardEntityBusinessList = []\n", " for cardEntityBusiness in res['info']['valueCardBusinessDiscountInfoList']:\n", " List = {\n", " \"labelName\": cardEntityBusiness['labelName'],\n", " \"businessType\": cardEntityBusiness['businessType'],\n", " \"labelId\": cardEntityBusiness['labelId']\n", " }\n", " cardEntityBusinessList.append(List)\n", " # 提取cardEntityBusinessDiscountList\n", " cardEntityBusinessDiscountList = []\n", " for cardEntityBusinessDiscount in res['info']['valueCardBusinessDiscountInfoList']:\n", " List = {\n", " \"labelName\": cardEntityBusinessDiscount['labelName'],\n", " \"businessType\": cardEntityBusinessDiscount['businessType'],\n", " \"discount\": cardEntityBusinessDiscount['discount'],\n", " \"labelId\": cardEntityBusinessDiscount['labelId']\n", " }\n", " cardEntityBusinessDiscountList.append(List)\n", " data = {\n", " \"id\": res['info']['entityDTO']['pkId'],\n", " \"carList\": carInfoList,\n", " \"cardNo\": res['info']['entityDTO']['memberCardNo'],\n", " \"memo\": res['info']['entityDTO']['memo'],\n", " \"useTerm\": res['info']['entityDTO']['useTerm'],\n", " \"idCustomer\": res['info']['entityDTO']['idCustomer'],\n", " \"version\": res_version['data']['version'],\n", " \"useType\": res['info']['entityDTO']['useType'],\n", " \"consumeLimitFlag\": res['info']['entityDTO']['consumeLimitFlag'],\n", " \"consumeLimitAmount\": int(float(res['info']['entityDTO']['consumeLimitAmount'])),\n", " \"permanent\": res['info']['entityDTO']['permanent'],\n", " \"endDate\": endDate,\n", " \"cardEntityBusinessList\": cardEntityBusinessList,\n", " \"cardEntityBusinessDiscountList\": cardEntityBusinessDiscountList,\n", " \"businessType\": 1,\n", " \"cardEntitySkuDiscountList\": res['info']['valueCardEntitySkuDiscountInfoList']\n", " }\n", " url = 'https://yunxiu.f6car.cn/marketing/card/modifyCzkCardEntity4Gray'\n", " res = requests.post(url,cookies=cookie_dict,headers=headers,json=data)\n", " res = res.json()\n", " print(res,da[0])\n", "except:\n", " pass" ] } ], "metadata": { "kernelspec": { "display_name": "base", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.4" } }, "nbformat": 4, "nbformat_minor": 2 }