Csvkit:在 python 代码中使用 "in2csv"

Csvkit : use "in2csv" in python code

我想在我的 python 代码中使用 in2csv 将 excel 文件转换为 csv,但没有 运行 它作为使用 exec 的单独进程。相反,我想直接导入函数并使用它,比如 in2csv("input.xls", "output.csv"),或者更好的是,直接获取 python 中的文件结构,而不使用 csv reader输出文件。

可能吗?

谢谢!

我也遇到了同样的问题。我查看了 in2csv 的源代码,发现它在内部使用了 agateagateexcel。我直接用了玛瑙,实现方式如下

对于 xls 文件

import agate
import agateexcel

table = agate.Table.from_xls('input.xls', sheet='sheet')

table.to_csv('output.csv')

对于 xlsx 文件

import agate
import agateexcel

table = agate.Table.from_xlsx('input.xlsx', sheet='sheet')

table.to_csv('output.csv')

https://github.com/wireservice/csvkit/blob/master/csvkit/utilities/in2csv.py