python实现拼多多订单接口API

python实现拼多多订单接口API,第1张

概述最近工作需要用到拼多多的一些接口,官方竟然没有提供,python的sdk,于是就自己简单的写了一个订单接口的api。1、代码#!/usr/bin/python3#-*-coding:utf-8-*-#@Time  :2020/3/290021下午19:40#@Author :xiaozhi!#@FileName:pdd_api#@Software:PyCharmimporttimeim 最近工作需要用到拼多多的一些接口,官方竟然没有提供,python的sdk,于是就自己简单的写了一个订单接口的API。

1、代码

#!/usr/bin/python3# -*- Coding: utf-8 -*-# @Time    : 2020/3/29 0021 下午 19:40# @Author  : xiaozhi!# @filename: pdd_API# @Software: PyCharmimport timeimport hashlibimport requestsfrom urllib.parse import urlencode
class PddAPI:    host = "https://gw-API.pinduoduo.com/API/router?"    headers = {        "accept": "application/Json"    }
   def __init__(self, ID=None, token=None, secret=None):        """        初始化        """        self.clIEnt_ID = ID        self.secret = secret        self.access_token = token        self.data_type = "JsON"
   def sign_md5(self, params):        """        对拼接好的字符串进行md5签名        """        hl = hashlib.md5()        hl.update(params.encode(enCoding='utf-8'))        return hl.hexdigest().upper()
   def splice_str(self):        """        升序排序请求参数,连接字符串,并在首尾加上clIEnt_secret        """        self.timestamp = f"{time.time()}".split(".")[0]        pdd_dict = self.__dict__.copy()        secret = self.secret        del pdd_dict["secret"]        reverse_List = sorted([(k, str(v)) for k, v in pdd_dict.items()], key=lambda x:x[0])        reverse_List.insert(0, ("", secret))        reverse_List.append(("", secret))        reverse_List_str = List(map(lambda x: "".join(x), reverse_List))        params = "".join(reverse_List_str)        return params, pdd_dict
   def urlencode_data(self, params, pdd_dict):        pdd_dict["sign"] = self.sign_md5(params)        result = urlencode(pdd_dict)        url = f"{self.host}{result}"        return url
   def pdd_order_List_get(self, **kwargs):        """        获取订单列表        kwargs: order_status=None, refund_status=None, start_confirm_at=None, end_confirm_at=None,                           page=None, page_size=None        """        res_type = "pdd.order.List.get"        self.type = res_type        for k, v in kwargs.items():            setattr(self, k, v)        params, pdd_dict = self.splice_str()
       url = self.urlencode_data(params, pdd_dict)        return self.response_Json(url=url)
   def pdd_order_information_get(self, order_sn=None):        """        获取订单详情        """        res_type = "pdd.order.information.get"        self.order_sn = order_sn        self.type = res_type        params, pdd_dict = self.splice_str()        url = self.urlencode_data(params, pdd_dict)        return self.response_Json(url=url)
   def pdd_order_status_get(self, order_sns=None):        """        订单状态        """        res_type = "pdd.order.status.get"        self.order_sns = order_sns        self.type = res_type        params, pdd_dict = self.splice_str()        url = self.urlencode_data(params, pdd_dict)        return self.response_Json(url=url)
   def pdd_erp_order_sync(self, **kwargs):        """        erp打单信息同步,        kwargs: order_sn=None, order_state=None, waybill_no=None, logistics_ID=None        """        res_type = "pdd.erp.order.sync"        self.type = res_type        for k, v in kwargs.items():            setattr(self, k, v)        params, pdd_dict = self.splice_str()        url = self.urlencode_data(params, pdd_dict)        return self.response_Json(url=url)
   def pdd_order_number_List_increment_get(self, **kwargs):        """        订单增量接口        kwargs: is_lucky_flag=None, order_state=None, start_updated_at=None, end_updated_at=None,page_size=None,        page=None, refund_status=None        """        res_type = "pdd.order.number.List.increment.get"        self.type = res_type        for k, v in kwargs.items():            setattr(self, k, v)        params, pdd_dict = self.splice_str()        url = self.urlencode_data(params, pdd_dict)        return self.response_Json(url=url)
   def response_Json(self, url):        res = requests.post(url=url, headers=self.headers)        return res.Json()

2、调用:

3、结果:

总结

以上是内存溢出为你收集整理的python实现拼多多订单接口API全部内容,希望文章能够帮你解决python实现拼多多订单接口API所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1188587.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存