前言
最近有厂商提出想把淘宝(tmall)店铺的卖出的订单详情数据采集到后台ERP管理系统中,并能实现线下打印电子面单功能。接手这个需求按照度娘给的指引,申请淘宝(tmall)开发者帐号,但是。。。开放平台把订单传送接口关了,只对厂商自研软件开放,还需要租用聚石塔。一系列操作真是上天了,没办法走通,最后没办法采用第三方供应商提供的接口实现曲线救国。
实现思路
方式一:提供谷歌浏览器插件安装在谷歌浏览器扩展程序中,然后用户手工登录淘宝店铺,通过解密GOOGLE-COOKIE得到淘宝网站登录中的cookie,通过cookie对淘宝订单网页自动定时下载订单数据,此种方式缺点,cookie会有有效期,需要不断更新cookie值。
方式二:对接淘宝(tmall)开放平台的相关接口,根据第三方提供的淘宝应用市场的服务链接购买店铺授权,拿到店铺授权后再调用接口,可解析订单数据,其中包含商品信息、物流信息、订单号、客户手机号、地址等重要信息保存;然后再与本地业务系统对比进行插入保存,包含退货信息,并且开通快递鸟接口,实现电子面单打印。
代码请求示例(CURL、PHP 、PHPsdk 、Java 、C# 、Python…)
# coding:utf-8
"""
Compatible for python2.x and python3.x
requirement: pip install requests
"""
from __future__ import print_function
import requests
# 请求示例 url 默认请求参数已经做URL编码
url = "https://wx19970108018/taobao/custom/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&method="
headers = {
"Accept-Encoding": "gzip",
"Connection": "close"
}
if __name__ == "__main__":
r = requests.get(url, headers=headers)
json_obj = r.json()
print(json_obj)
方式一代码响应示例
方式二代码响应示例:
{"response":{"code":0,"message":"ok","data":[{"receiver":{"address_detail":"南湖街道南湖新村西街(黄金大白楼)3单元503室","city":"长春市","country":"","district":"朝阳区","matched":true,"mobile":"13331570019","name":"赵文子昇","oaid":"1umfLygxZbkdgxw2c8XONfg15XmbkmNv491vvXSiaBcyC41nSxsWA5qkJFJ4xaJ3x1dLoSUj","phone":"","privacy_protection":false,"secret_no_expire_time":"","state":"吉林省","tid":"16659180859002439983","town":"南湖街道"},"code":0,"message":"success","tid":"16659180859024393983"}],"trace_id":"","is_error":true,"version":"2.0","length":532},"data_from":"top.fw","error":"","reason":"","error_code":"0000","cache":0,"api_info":"today:3679 max:15000 all[3679=3679+0+0];expires:2022-10-20","execution_time":"0.431","server_time":"Beijing\/2022-09-09 09:55:37","client_ip":"106.6.37.179","call_args":[],"api_type":"taobao","translate_language":"zh-CN","translate_engine":"google_cn","server_memory":"7.55MB","request_id":"gw-2.631a9d191b29a","last_id":"12049194060"}