news 2026/1/22 12:53:17

电商api实战解析:1688.item_get_company 获取公司档案信息

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
电商api实战解析:1688.item_get_company 获取公司档案信息

一、接口定位

item_get_company 不是“商品级”接口,而是“供应商级”接口。
输入:1688 商品 offerId 或 companyId(二选一)
输出:公司档案 60+ 字段,包括工商信息、深度认证、工厂能力、贸易能力、在线表现 5 大板块。
典型用途:

  1. 选品 SaaS 一键生成“供应商体检报告”

  2. ERP 自动拦截“贸易型”或“个体工商户”供应商

  3. 财务系统拉取“开票类型、对公账号”做应付初始化


二、权限与调用地址

项目说明
官方方法名alibaba.icbu.company.get
网关https://gw.open.1688.com/openapi/param2/2/system.oauth2/company/get
权限代码com.alibaba.icbu.company.read
频率默认 1 QPS,企业最高 20 QPS
费用免费,但需企业开发者+深度认证权限包

三、签名算法(2025-12 仍沿用“旧版 TOP 签名”)

  1. 排除sign与空值

  2. key 按 ASCII 升序

  3. key + value首尾拼接AppSecret

  4. MD5 → 32 位大写

Python 函数(可直接复用):

from hashlib import md5 def sign(p: dict, secret: str) -> str: p = {k: v for k, v in p.items() if v is not None} text = ''.join([f'{k}{v}' for k, v in sorted(p.items())]) + secret return md5(text.encode()).hexdigest().upper()

四、最小可运行示例

场景:已知 1688 商品 ID,想 1 行代码拿到“公司 + 工厂 + 认证”全套档案。

import requests, time, json class CompanyAPI: url = 'https://gw.open.1688.com/openapi/param2/2/system.oauth2/company/get' def __init__(self, app_key, app_secret, access_token): self.ak, self.sk, self.token = app_key, app_secret, access_token def get_by_offer(self, offer_id: str): params = { 'method': 'alibaba.icbu.company.get', 'app_key': self.ak, 'access_token': self.token, 'format': 'json', 'v': '1.0', 'timestamp': str(int(time.time() * 1000)), 'offerId': offer_id, 'fields': ('companyName,businessType,countryName,' 'province,city,address,contact,telephone,' 'mainProducts,employeeNum,factoryArea,' 'deepVerify,deepVerifyInfo,isoCert,' 'tradeCapacity,creditLevel,openTime') } params['sign'] = sign(params, self.sk) r = requests.post(self.url, data=params, timeout=10).json() if 'error_response' in r: raise RuntimeError(r['error_response']['msg']) return r['company_get_response']['company'] # ----------- 调用 ----------- cli = CompanyAPI('你的AppKey', '你的AppSecret', '你的AccessToken') info = cli.get_by_offer('64321098756') print(json.dumps(info, ensure_ascii=False, indent=2))

五、核心字段速查表(60 选 20)

字段类型示例值业务含义
companyNamestring深圳市某某科技有限公司工商注册名
businessTypestring生产企业枚举:生产企业/贸易企业/工贸一体/个体工商户
countryNamestring中国注册国家
province/citystring广东省/深圳市可用来做“产地”标签
addressstring宝安区福永街道桥头村…可地图打点
contactstring张经理公开联系人
telephonestring0755-2953****前台固话
mainProductslist["蓝牙耳机", "音箱"]关键词搜索权重高
employeeNumstring200-300人工厂规模粗筛
factoryAreaint5000单位:平方米
deepVerifybooltrue是否深度验厂
deepVerifyInfoobject{“verifyType”: “深度验厂”, “verifyUrl”: “https://…”}视频/报告链接
isoCertlist["ISO 9001", "BSCI"]体系证书
tradeCapacityobject{“exportPct”: 80, “mainMarkets”: [“北美”, “西欧”]}出口占比
creditLevelstringAAA诚信通等级
openTimestring2012-05-18开店时间,算“老店”

六、五大踩坑实录

  1. offerId 与 companyId 混用
    老版本只认companyId,2025-12 起两者皆可;但若同时传,优先取companyIdofferId被忽略。

  2. deepVerify=true 但 deepVerifyInfo 为空
    说明“已下单验厂,但报告未回传”,隔 24h 再拉即可。

  3. address 带“*”号
    个人/个体户保护隐私,地址被脱敏,只能到“镇”级;如需完整地址,需用户授权“电子合同”接口。

  4. 字段缺失≠null
    1688 对未填写字段直接不返回,解析前务必dict.get(key, default)

  5. 图片外链 30 天失效
    deepVerifyInfo.verifyUrl是阿里云临时签名,落库请立刻下载转存 OSS。


七、生产级落库设计(MySQL 片段)

CREATE TABLE supplier_company ( id bigint PRIMARY KEY AUTO_INCREMENT, company_id varchar(32) UNIQUE COMMENT '1688 companyId', company_name varchar(100) NOT NULL, business_type varchar(20), province varchar(20), city varchar(20), address varchar(255), employee_num varchar(20), factory_area int COMMENT '平方米', deep_verify tinyint DEFAULT 0, iso_cert json, trade_capacity json, credit_level varchar(10), open_time date, updated_at timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP );
  • iso_cert、tradeCapacity 直接存 JSON,方便后台渲染标签。

  • 建联合索引(province, city, businessType)用于“产地+类型”筛选。


八、小结

item_get_company 是 1688 开放生态里“唯一能把供应商家底一次搬空”的接口。
记住 3 句话:

  1. 先拿 offerId 换 companyId,再拉档案,可省 50% 流量。

  2. 深度验厂、ISO、工厂面积 3 个字段组合,即可在选品阶段秒筛“真实工厂”。

  3. 地址、电话、验厂报告都是 30 天临时链接,落库立刻转存,否则全链 403。

把上面的CompanyAPI类复制到项目,再配一张supplier_company表,10 分钟就能上线“供应商体检报告”自动化。祝各位调试顺利,永不踩坑!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/21 10:37:39

2026年你应该掌握的进阶版 Gemini CLI 实用指南

现在用AI,只会在网页版当聊天机器人用吗?那你就out了。 Gemini CLI 是 Google 推出的终端 AI 助手。相比于网页版,命令行工具在处理本地文件、读取项目上下文方面有着天然优势。对于开发者而言,它不仅仅是一个聊天机器人&#xf…

作者头像 李华
网站建设 2026/1/15 23:24:53

ppo 找出口模型 训练 笔记 26/1/13

cnn模型大小我给他控制在训练耗时30s左右(4060ti) 动作空间6个:4个移动2个转头,因为一开始都要跑一遍,动作太多需要跑更多步才能吃到正反馈 我现在设置是60步一episode,5 episode训练一次 转头70度左右&…

作者头像 李华
网站建设 2026/1/16 0:51:20

深度学习计算机毕设之基于python-AI机器学习对狗表情训练识别基于python-AI深度学习对狗表情训练识别

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/1/21 1:26:52

【2、Gis数据-浙江省下属流域划分及其数据】

浙江省八大水系示意图: 浙江省八大水系详情: 一、钱塘江: 北源(新安江)河长588.73公里、南源(马金溪)河长522.22公里 二、瓯江: 河长379.93公里;流域面积18168.75平方公里(其中省外部分37.66平方公里) 三、椒江: 河长202.00公里;流域面积6590.71平方公里…

作者头像 李华