初始发行
项目描述
datakick 是Datakick 开放产品数据库 API 的 Python 包装器。
用法
安装:
python setup.py install
或者
pip install datakick
示例代码:
首先导入模块:
>>> import datakick
按条码搜索产品:
>>> gtin14 = "037000062219"
>>> product = datakick.find_product(gtin14)
>>> print("{} - {}".format(product.brand_name, product.name))
'Crest Pro-Health Clean Mint Toothpaste'
使用密钥搜索产品:
>>> products = datakick.search("Toothpaste")
>>> for product in products:
... print("{} - {}".format(product.brand_name, product.name))
'Crest Pro-Health Clean Mint Toothpaste'
'Sensodyne Fresh Impact Toothpaste'
# etc.
在数据库中添加/修改产品:
>>> gtin14 = "011110491503"
>>> product = datakick.add_product(
... gtin14, brand_name="Big K", name="Diet Cola", size="355mL"
... )
>>> print("{} - {} - {}".format(
... product.brand_name, product.name, product.size)
... )
'Big K Diet Cola 355mL'
将图像添加到数据库中的产品:
>>> gtin14 = "011110491503"
>>> img_path = "path/to/your/image/cola.jpg" # only .jpg or .jpeg allowed!
>>> img_url = datakick.add_image(gtin14, img_path)
>>> print(img_url)
'https://d2b9vdin3yve6y.cloudfront.net/1a888191-e530-4d55-a871-00a0994d75c0.jpg'
列出产品(在页面上):
>>> products = datakick.list_products(5) # each page returns 100 products
>>> for product in products:
... print(product.gtin14)
'016000437692'
'016000439894'
# etc.
添加/修改产品的可选参数:
可选参数 |
类型 |
单位 |
例子 |
|---|---|---|---|
姓名 |
细绳 |
不适用 |
“牙膏” |
品牌 |
细绳 |
不适用 |
“高露洁” |
尺寸 |
细绳 |
不适用 |
“20盎司” |
配料 |
细绳 |
不适用 |
“牛奶,巧克力,糖” |
服务大小 |
细绳 |
不适用 |
“2汤匙。” |
servings_per_container |
细绳 |
不适用 |
“2个饼干” |
卡路里 |
整数 |
不适用 |
200 |
脂肪卡路里 |
整数 |
不适用 |
100 |
胖的 |
整数/浮点数 |
克 |
10 |
饱和脂肪 |
整数/浮点数 |
克 |
10 |
反式脂肪 |
整数/浮点数 |
克 |
0 |
多不饱和脂肪 |
整数/浮点数 |
克 |
5 |
单不饱和脂肪 |
整数/浮点数 |
克 |
5 |
胆固醇 |
整数 |
毫克 |
20 |
钠 |
整数 |
毫克 |
40 |
钾 |
整数 |
毫克 |
60 |
糖类 |
整数 |
克 |
20 |
纤维 |
整数 |
克 |
10 |
糖 |
整数 |
克 |
6 |
蛋白质 |
整数 |
克 |
4 |
作者 |
细绳 |
不适用 |
“第一个 M. 最后一个” |
出版商 |
细绳 |
不适用 |
“我的出版商” |
页面 |
整数 |
不适用 |
400 |
酒精体积 |
整数/浮点数 |
百分 |
20 |
例外:
datakick.exceptions.ImageTooLarge - 如果提供给 datakick.add_image 的图像太大 (>1MB) 将被抛出
datakick.exceptions.InvalidImageFormat - 如果提供给 datakick.add_image 的图像是错误的文件格式(仅允许 .jpg 或 .jpeg),将被抛出。
requests.exceptions.HTTPError - 如果提供的 gtin14 无效或在产品数据库中找不到,将被抛出。