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 相关文章推荐
Windows和Linux下使用Python访问SqlServer的方法介绍
Mar 10 Python
python实现一次创建多级目录的方法
May 15 Python
Python的几个高级语法概念浅析(lambda表达式闭包装饰器)
May 28 Python
Python将多份excel表格整理成一份表格
Jan 03 Python
TensorFlow打印tensor值的实现方法
Jul 27 Python
python实现屏保计时器的示例代码
Aug 08 Python
Python基于scipy实现信号滤波功能
May 08 Python
详解Python中的分支和循环结构
Feb 11 Python
python实现批处理文件
Jul 28 Python
详解Django中views数据查询使用locals()函数进行优化
Aug 24 Python
如何利用Python写个坦克大战
Nov 18 Python
python实现局部图像放大
Nov 17 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
YII视图整合kindeditor扩展的方法
2016/07/13 PHP
PHP 进度条函数的简单实例
2017/09/19 PHP
php数据结构之顺序链表与链式线性表示例
2018/01/22 PHP
IE中jscript/javascript的条件编译
2006/09/07 Javascript
JavaScript 开发中规范性的一点感想
2009/06/23 Javascript
Javascript 定时器调用传递参数的方法
2009/11/12 Javascript
Javascript 八进制转义字符(8进制)
2011/04/08 Javascript
基于jquery的可多选的下拉列表框
2012/07/20 Javascript
JS实现图片翻书效果示例代码
2013/09/09 Javascript
asm.js使用示例代码
2013/11/28 Javascript
Js实现动态添加删除Table行示例
2014/04/14 Javascript
JS实现div居中示例
2014/04/17 Javascript
jQuery实现跨域
2015/02/03 Javascript
举例详解AngularJS中ngShow和ngHide的使用方法
2015/06/19 Javascript
详细分析JavaScript变量类型
2015/07/08 Javascript
jQuery unbind 删除绑定事件详解
2016/05/24 Javascript
微信小程序 canvas API详解及实例代码
2016/10/08 Javascript
关于Node.js中Buffer的一些你可能不知道的用法
2017/03/28 Javascript
JavaScript该如何学习 怎样轻松学习JavaScript
2017/06/12 Javascript
Element-UI Table组件上添加列拖拽效果实现方法
2018/04/14 Javascript
Python getopt模块处理命令行选项实例
2014/05/13 Python
python网络爬虫之如何伪装逃过反爬虫程序的方法
2017/11/23 Python
深入理解Python爬虫代理池服务
2018/02/28 Python
python模块导入的细节详解
2018/12/10 Python
python中使用you-get库批量在线下载bilibili视频的教程
2020/03/10 Python
解决python脚本中error: unrecognized arguments: True错误
2020/04/20 Python
python实现excel公式格式化的示例代码
2020/12/23 Python
Python基于argparse与ConfigParser库进行入参解析与ini parser
2021/02/02 Python
家长会主持词
2014/03/26 职场文书
公司合作协议书范本
2014/04/18 职场文书
交通文明倡议书
2014/05/16 职场文书
工会工作先进事迹
2014/08/18 职场文书
检讨书范文300字
2015/01/28 职场文书
私人贷款担保书该怎么写呢?
2019/07/02 职场文书
爱国之歌(8首)
2019/09/29 职场文书
spring cloud gateway中如何读取请求参数
2021/07/15 Java/Android