用python分析拼多多_python:拼多多订单接口api
最近工作需要用到pdd的一些接口,官方竟然没有提供,python的sdk,于是就自己简单的写了一个订单接口的api。
希望能帮助到使用python的小伙伴:
#!/usr/bin/python3
# -*- coding: utf-8 -*-
# @Time : 2020/3/29 0021 下午 19:40
# @Author : xiaozhi!
# @FileName: pdd_api
# @Software: PyCharm
import time
import hashlib
import requests
from 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()
原文链接:https://blog.csdn.net/lz270978971/article/details/105200015
用python分析拼多多_python:拼多多订单接口api相关推荐
- python分析成都房租信息,以及利用高德API查找租房
python分析成都租房信息,以及利用高德API查找租房 使用的技术 效果 爬虫 需要爬取的网页分析 爬虫源码 数据可视化 利用高德API查找租房 github地址 使用的技术 爬虫:Beautifu ...
- python抢拼多多_python:拼多多订单接口api
最近工作需要用到pdd的一些接口,官方竟然没有提供,python的sdk,于是就自己简单的写了一个订单接口的api. 希望能帮助到使用python的小伙伴: #!/usr/bin/python3 # ...
- python:拼多多订单接口api
最近工作需要用到pdd的一些接口,官方竟然没有提供,python的sdk,于是就自己简单的写了一个订单接口的api. 希望能帮助到使用python的小伙伴: #!/usr/bin/python3 # ...
- python订单详细教程-python:拼多多订单接口api
最近工作需要用到pdd的一些接口,官方竟然没有提供,python的sdk,于是就自己简单的写了一个订单接口的api. 希望能帮助到使用python的小伙伴: #!/usr/bin/python3 # ...
- 如何用python实现电商订单接口API
在现在这个共享主题大行的时代,对于软件来说,只有共享和开放才能发挥和开发软件代码最大的作用.而API正是为了这个主题出现的,API的出现大大加快了编程的速度,使得我们编程实现越来越复杂的功能成为了可能 ...
- python 拼多多_python 拼多多_拼多多2018校招编程题汇总 Python实现
列表补全 在商城的某个位置有一个商品列表,该列表是由L1.L2两个子列表拼接而成.当用户浏览并翻页时,需要从列表L1.L2中获取商品进行展示.展示规则如下: 用户可以进行多次翻页,用offset表示用 ...
- 利用python分析电商_Python实现爬取并分析电商评论
现如今各种APP.微信订阅号.微博.购物网站等网站都允许用户发表一些个人看法.意见.态度.评价.立场等信息.针对这些数据,我们可以利用情感分析技术对其进行分析,总结出大量的有价值信息.例如对商品评论的 ...
- python分析b站_Python爬取并分析B站最热排行榜,我发现了这些秘密
现在大家的生活中,已经越来越离不开B站了,2020年的第一季度,B站月活跃用户达到了1.72亿,日活跃用户也已经突破了5000万个用户.源源不断的流量让B站的up主们也是粉丝数目不断暴涨,百万粉丝的u ...
- python分析股票数据_Python数据可视化——股票数据分析
1.背景 GAFATA,它表示的是GOOGLE,AMAZON,FACEBOOK,APPLE,TENCENT,ALIBABA这六家互联网巨头的首字母缩写.本文主要分析GAFATA这六家公司股票近一年的的 ...
- python分析服务器日志_python实现web服务器日志分析脚本
python日志分析脚本 用python可以实现大日志文件的分析,比如查到sql注入语句,然后看到IP,就可以改下脚本,用IP为特征取出日志,分析入侵过程. python比较shell脚本的优点是速度 ...
最新文章
- L1正则化为什么又叫做稀疏因子?
- VScode像Codeblocks一样,不启动调试和Debug直接运行
- Struts2显示double价格格式0.00
- 微软ping程序源代码完整版(附详细的注释)
- SVG矢量绘图 path路径详解(基本画法)
- java文件名命名的规则,Java文件名及其他命名规则
- EularProject 39:给周长推断构成直角三角形个数
- 2021非科班生的Java面试之路,java思维导图笔记
- 8.计蒜客ACM题库.A2019 Save the Room
- js实现table中td单元格合拼并求和
- Aspose.word基础
- does not exist or is not a readable directory
- 营业执照识别,三证合一
- 魔力宝贝手游版 服务器维护,魔力宝贝手游10月24日更新维护公告 各大更新内容...
- python工程师认证证书报考条件_Python工程师需要具备什么条件
- 必备干货,程序员进阶升级全攻略!
- [Linux] Linux不分区硬盘挂载
- 计算机的配置鼠标,鼠标设置,教您鼠标设置在电脑的什么位置
- 16_ZYNQ7020开发板gpio输入实验
- vue按照字母表排序