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

yipeiwu_com7年前Python基础

本文实例讲述了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程序设计有所帮助。

相关文章

Ubuntu 下 vim 搭建python 环境 配置

1. 安装完整的vim # apt-get install vim-gnome 2. 安装ctags,ctags用于支持taglist,必需! # apt-get instal...

Ranorex通过Python将报告发送到邮箱的方法

Ranorex通过Python将报告发送到邮箱的方法

Ranorex测试报告如何发送到邮箱在网上看了下,其实可以通过在Ranorex上或者VS调用编写发送邮箱代码就可以执行发送了,RX主要涉及到的开发语言是C++或者.NET。但是我想用Py...

python实现淘宝购物系统

本文实例为大家分享了python淘宝购物系统的具体代码,供大家参考,具体内容如下 代码如下: #刚创建账户所拥有的钱 money = 0 #定义商品列表 goods_list =...

Django中cookie的基本使用方法示例

前言 基于 Internet的各种服务系统应运而生,建立商业站点或者功能比较完善的个人站点,常常需要记录访问者的一些信息;论坛作为 Internet发展的产物之一,在 Internet...

在Linux命令行终端中使用python的简单方法(推荐)

在Linux命令行终端中使用python的简单方法(推荐)

Linux终端中的操作均是使用命令行来进行的。因此,对于小白来说,熟记几个基本的命令行和使用方法能够较快的在Linux命令行环境中将python用起来。 打开命令行窗口 打开命令行窗口的...