python实现京东订单推送到测试环境,提供便利操作示例


Posted in Python onAugust 09, 2019

本文实例讲述了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相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
详解Python中expandtabs()方法的使用
May 18 Python
python flask实现分页效果
Jun 27 Python
详谈在flask中使用jsonify和json.dumps的区别
Mar 26 Python
python使用xlrd和xlwt读写Excel文件的实例代码
Sep 05 Python
解决python3捕获cx_oracle抛出的异常错误问题
Oct 18 Python
Python爬虫实现验证码登录代码实例
May 10 Python
python+selenium实现简历自动刷新的示例代码
May 20 Python
Python 正则表达式 re.match/re.search/re.sub的使用解析
Jul 22 Python
Python操作MySQL数据库实例详解【安装、连接、增删改查等】
Jan 17 Python
Python字符串hashlib加密模块使用案例
Mar 10 Python
Python爬虫进阶之爬取某视频并下载的实现
Dec 08 Python
Pandas搭配lambda组合使用详解
Jan 22 Python
利用ImageAI库只需几行python代码实现目标检测
Aug 09 #Python
python操作excel让工作自动化
Aug 09 #Python
python笔记_将循环内容在一行输出的方法
Aug 08 #Python
python中的列表与元组的使用
Aug 08 #Python
详解python中的数据类型和控制流
Aug 08 #Python
python爬虫selenium和phantomJs使用方法解析
Aug 08 #Python
Python2和3字符编码的区别知识点整理
Aug 08 #Python
You might like
一拳超人中怪人协会钦定! S级别最强四人!
2020/03/02 日漫
php中session_unset与session_destroy的区别分析
2011/06/16 PHP
session在php5.3中的变化 session_is_registered() is deprecated in
2013/11/12 PHP
最准确的php截取字符串长度函数
2015/10/29 PHP
thinkphp5框架实现数据库读取的数据转换成json格式示例
2019/10/10 PHP
JQUERY 实现窗口滚动搜索框停靠效果(类似滚动停靠)
2013/03/27 Javascript
Ext JS 4实现带week(星期)的日期选择控件(实战二)
2013/08/21 Javascript
js购物车实现思路及代码(个人感觉不错)
2013/12/23 Javascript
Jquery下EasyUI组件中的DataGrid结果集清空方法
2014/01/06 Javascript
js模拟C#中List的简单实例
2014/03/06 Javascript
JsRender for index循环索引用法详解
2014/10/31 Javascript
BootStrap 实现各种样式的进度条效果
2016/12/07 Javascript
Vue2.0表单校验组件vee-validate的使用详解
2017/05/02 Javascript
jquery加载单文件vue组件的方法
2017/06/20 jQuery
Nodejs之TCP服务端与客户端聊天程序详解
2017/07/07 NodeJs
简单实现js放大镜效果
2017/07/24 Javascript
cropper js基于vue的图片裁剪上传功能的实现代码
2018/03/01 Javascript
layui table 参数设置方法
2018/08/14 Javascript
ztree加载完成后显示勾选节点的实现代码
2018/10/22 Javascript
Vue如何使用混合Mixins和插件开发详解
2020/02/05 Javascript
js实现聊天对话框
2020/02/08 Javascript
[02:43]DOTA2英雄基础教程 半人马战行者
2014/01/13 DOTA
python实现的二叉树算法和kmp算法实例
2014/04/25 Python
使用Python绘制图表大全总结
2017/02/11 Python
Python实现发送QQ邮件的封装
2017/07/14 Python
python中Apriori算法实现讲解
2017/12/10 Python
Python 3.x 判断 dict 是否包含某键值的实例讲解
2018/07/06 Python
使用 python pyautogui实现鼠标键盘控制功能
2019/08/04 Python
在pycharm中显示python画的图方法
2019/08/31 Python
利用python读取YUV文件 转RGB 8bit/10bit通用
2019/12/09 Python
高二美术教学反思
2014/01/14 职场文书
报关专员求职信范文
2014/02/22 职场文书
2014年仓库管理员工作总结
2014/11/18 职场文书
党员读书活动心得体会
2016/01/14 职场文书
jQuery ajax - getScript() 方法和getJSON方法
2021/05/14 jQuery
Python OpenCV实现传统图片格式与base64转换
2021/06/13 Python