我测了7个商品条码 API,说说结果

本文最后更新于 2026年7月23日 上午

一、起因

前几天,我想做一个扫码查商品的小工具。

拿起手机扫一下包装上的条码,就能看到商品名称、价格、生产厂家。这个需求听起来很简单。

做起来才发现,难的不是扫描,而是查不到数据。

条码本身只是一个数字。你需要一个数据库,把数字翻译成商品信息。

这就需要用到商品条码 API。

我花了一个下午,测了七个数据库。下面说说结果。

免费商品条码 API 实测对比

二、先说点背景知识

商品条码就是包装上印的那些黑白竖条。下面通常跟着一串数字,13 位。

这串数字不是随便编的。前三位叫”前缀码”,代表注册国家或地区。比如 690 到 699 开头的,是中国的条码。

全球条码的管理机构叫 GS1。每个国家有分支,中国的是 GS1 中国(ancc.org.cn)。

知道了这些,再看下面的测试结果就清楚多了。

三、OpenFoodFacts:食品数据的王者

先说让我最满意的一个。

OpenFoodFacts 是一个食品数据库,开源的。免费,不需要 API Key,没有调用限制。

我用费列罗 Nutella 巧克力酱的条码测了一下,返回了 365 个字段。

365 个字段。

成分、营养表、产地、包装材料,甚至加工等级都有。数据量之大,有点出乎意料。

调用方式也很简单。下面是代码。

1
curl "https://world.openfoodfacts.org/api/v2/product/3017620422003.json"

参数就是条码数字,返回 JSON 格式,直接解析就行。

不过,它只收录食品。你扫一瓶洗发水,查不到。

还有一个问题。我用中国前缀的条码测试,690 和 692 开头的,全部返回 404。

也就是说,中国食品基本不在它的数据库里。

四、UPCitemdb:通用商品的首选

再来看第二个。

UPCitemdb 覆盖的商品范围比 OpenFoodFacts 广得多,不限于食品。

免费额度是每天 100 次。不需要 API Key,直接调用。

返回 18 个字段,包括商品名称、品牌,还有价格区间和商家报价。对于想比价的场景,这个挺实用。

下面是调用示例。

1
curl "https://api.upcitemdb.com/prod/trial/lookup?upc=037000138416"

trial 路径是免费试用的,每天 100 次。想要更多,就得付费了。

说实话,18 个字段不算多。但日常使用够用。

我觉得对于通用商品查询,这个是目前最方便的选择。

五、Google Books:查书的

如果你的条码是一本书的 ISBN,可以用 Google Books API

免费额度每天 1000 次,数据很全。

不过有两个问题。

第一,它只查图书。其他商品一概不认。

第二,频繁请求会触发 429 错误。也就是”请求太多次了”。

1
curl "https://www.googleapis.com/books/v1/volumes?q=isbn:9787115428028"

这个 API 需要带上 API Key,不能像前面两个那样直接调用。

偶尔查几本没问题,批量用要注意频率。

六、Open Library:另一个查书的

Open Library 也是查图书的。

免费,无限制,不需要 API Key。

字段比 Google Books 少一些。不过没有调用次数限制,也不用担心被挡。

我一般两个一起用,互相补。Google Books 查不到的,Open Library 经常有。反过来也是。

七、UPC Database:需要注册

UPC Database 返回的商品信息还可以,每天免费 100 次。

但它需要注册账号,获取 API Key 之后才能调用。

对于不想注册的用户来说,这多了一道门槛。

而且 100 次的额度跟 UPCitemdb 一样,数据覆盖范围却不如后者广。

老实说,我没有特别推荐它的理由。

八、GS1 GEPIR:用不了

GS1 是条码的总管理机构,我想他们的数据库应该最全。

GS1 GEPIR 看起来很正式。我试了一下,返回 HTTP 403。

换了个请求方式,返回 530。

总之就是不提供公开 API。

这个也能理解。GS1 的主要业务是卖条码,不是提供免费数据接口。

九、DataKick:已经没了

DataKick 是一个社区维护的条码数据库,以前口碑不错。

我去访问的时候,返回 HTTP 404。

网站已经打不开了。服务停止了。

社区项目维护不下去,是常态。可惜了。

十、中国商品条码的困境

上面七个 API 测下来,有一个明显的感受。

凡是涉及中国商品的,基本都查不到。

我专门查了一下原因。690 到 699 是中国的前缀码,光这个范围内就有超过 1000 万条记录。

这些数据掌握在 GS1 中国 手里。我试了 ancc.org.cn 和 gs1cn.org,都返回 530,不对外开放。

对于国内开发者来说,这就是一个黑箱。你知道条码存在,你知道有数据库,但你拿不到数据。

目前我没有找到任何免费的中国商品条码 API。如果你知道有,欢迎告诉我。

十一、总结一下

测了七个,真正能用的就三个。

查食品,用 OpenFoodFacts。数据量大,不花钱,没有限制。

查通用商品,用 UPCitemdb。每天 100 次够用,覆盖面广。

查图书,用 Google Books 加 Open Library。两个互补。

至于中国商品,目前没有免费的解决办法。

以上就是这次的测试结果,希望对大家有帮助。

参考链接


我测了7个商品条码 API,说说结果
https://normdist.com/2026/07/23/ND-20260723-002-free-barcode-api-comparison/
作者
小瑞
发布于
2026年7月23日
许可协议