起因
前两天收到跨境电商事业部同事发来的一个需求,说有一个表格,里面只有产品ID和其他一些信息,但是没有其他信息,诸如产品中文名和发货地,这些信息需要通过调取API获得。希望我们帮忙导出合并到Excel中
分析及实现
- 首先需要读取Excel中,每个产品的ID
- 然后调用产品查询API,该API通过GET+ID参数方式进行查询
- 查询到信息后,将需要的信息追加到对应行的后面列中
openpyxl
Python 中操作 Excel 的库有许多,例如 xlrd、xlwt、xlsxwriter、openpyxl 等,openpyxl是其中一个,该库主要有几个特点:支持xlsx,支持对现有文档读写,被Python-Excel优先推荐。
几经对比调研,最终选择 openpyxl。
使用方法
1 | # 打开excel |
在上述代码中,首先加载原始文件files/file.xlsx
,然后对默认sheet进行行遍历,每一行第一列An代表产品ID,
load_data方法通过调用API, 查询到该产品的中文名称和发货地,然后再写入后面的列中,如Dn和En
最后全部遍历完后,再保存表格,这样整个需求就实现了