python实现京东订单推送到测试环境,提供便利操作示例
作者:zhizunyu2009 时间:2021-09-01 09:03:46
本文实例讲述了python实现京东订单推送到测试环境,提供便利操作。分享给大家供大家参考,具体如下:
# -*- coding: utf-8 -*-
import hashlib
import time
import requests
from order30 import conf
app_key = conf.jd_appkey
appSecret = conf.jd_secret
token = conf.jd_token
def get_md5(string):#返回字符串md5加密后大写
hl = hashlib.md5()
hl.update(string.encode('utf-8'))
return hl.hexdigest().upper()
def get_timestr():#获取2分钟前的时间
time_now = int(time.time())-120
timestr = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time_now))
return timestr
def req_get_result(api_url,api_data):#get方法请求函数
req_get = requests.get(api_url,api_data)
result = req_get.json()
return result
def req_post_result(api_url,api_data):#post方法请求函数
req_post = requests.post(api_url,data=api_data)
result = req_post.json()
return result
def param_sort(param_dict):#传入字典,返回排序后并且连接好的字符串
keys_list = sorted(param_dict.keys())
rb_str = ''
for k in keys_list:
key_value = k + str(param_dict[k])
rb_str = rb_str + key_value
return rb_str
def op_jd_order(outer_order_id,optype):#向测试环境推送一个订单
api_url_dict = {
"33060":"http://xx.xxx.xxx.com/jd/xxx1",# 用户确认收货完成订单
"32000":"http://xx.xxx.xxx.com/jd/xxx2", #创建新订单
"10":"http://xx.xxx.xxx.com/jd/xxx3",#用户申请售后
}
api_url = api_url_dict[optype]
timestamp = get_timestr()
jd_parms = '{"billId":"%s","statusId":"%s","timestamp":"%s"}'%(outer_order_id,optype,timestamp)
api_data = {
'token':token,
'app_key':app_key,
'timestamp':timestamp,
'format':'json',
'v':'1.0',
'jd_param_json':jd_parms
}
sort_str = param_sort(api_data) #对参数进行排序,连接。
params_str = appSecret + sort_str + appSecret #首尾加上appSecret
sign = get_md5(params_str)#获得签名后的大写字符串
api_data['sign'] = sign
req = req_post_result(api_url,api_data)
return req
希望本文所述对大家Python程序设计有所帮助。
来源:https://blog.csdn.net/zhizunyu2009/article/details/80581693
标签:python,京东订单,推送
0
投稿
猜你喜欢
Python for循环搭配else常见问题解决
2021-04-23 06:08:56
Python中ArcPy栅格裁剪栅格(批量对齐栅格图像范围并统一行数与列数)
2021-02-19 21:12:48
PHP设计模式之观察者模式浅析
2023-05-27 12:20:11
python3实现飞机大战
2023-03-03 00:36:18
Django 中使用流响应处理视频的方法
2021-01-12 20:55:13
Python协程的2种实现方式分享
2022-12-21 12:42:56
Python warning警告出现的原因及忽略方法
2021-10-16 10:59:02
ASP实例:幻灯片新闻代码
2008-11-21 17:40:00
Python函数式编程指南(三):迭代器详解
2023-06-03 06:11:52
Python设计密码强度校验程序
2022-09-29 08:37:12
js添加千分位的实现代码(超简单)
2023-08-25 07:43:29
ASP-server.URLEncode反函数:urldecode
2008-10-23 16:05:00
Django处理多用户类型的方法介绍
2022-11-30 10:16:54
Python转码问题的解决方法
2023-06-30 07:48:52
解决Python 写文件报错TypeError的问题
2022-09-18 06:54:26
从SQL Server2000升级到2005的过程解析
2009-01-13 14:07:00
python Gunicorn服务器使用方法详解
2021-09-06 00:35:08
JavaScript中的"类" 序言
2008-02-18 13:26:00
下拉列表两级连动的新方法(一)
2009-06-04 18:18:00
Oracle备库宕机启动的完美解决方案
2023-07-20 05:28:34