Office 的 Excel 以及 MacOs Numbers 转 CSV 总有乱码、丢数据的问题。 所以写了这个命令脚本 xlparser 做 excel2csv 转换。
希望对大家有用。
xlparser: https://github.com/ahuigo/xlparser 主要是将 excel 转换成 csv 或 json
xcut: https://github.com/ahuigo/xcut 配合 xcut, 可以进一步处理 csv 文件, 比如提取 name 这一列
pip3 install xlparser
pip3 install xcut
$ xlparser -h
Usage: xlparser FILE [options]
# Convert xlsx to csv
$ xlparser source.xlsx > new.csv
# Convert csv to csv
$ xlparser source.csv > new.csv
# Convert csv to json
$ xlparser source.csv -json > new.json
options:
-h For help.
-csv Export to csv(by default).
-json Export to json.
$ xlparser src.xlsx | tee test.csv
name, score
"李雷,韩梅",15
小花,16
$ xlparser src.xlsx | xcut -f name
name
"李雷,韩梅"
小花
$ xlparser src.xlsx | xcut -f score,name
score,name
15,"李雷,韩梅"
16,小花
1
pmyile 2018-12-20 23:52:43 +08:00
xlsx 的不同 sheet 页可否转呢?
|
2
mingyun 2018-12-20 23:54:46 +08:00
λ pip install xcut
Collecting xcut Could not find a version that satisfies the requirement xcut (from versions: ) No matching distribution found for xcut |
4
a132811 OP @mingyun 更新下你的 pip,再看看你的源能不能搜得到
``` $ pip install --upgrade pip ..... $ pip search xcut xcut (0.0.10) - Xcut is an Enhanced cut command, which is used to help grep column. ``` |
5
a132811 OP |
6
jindaodama 2018-12-21 16:08:24 +08:00
推荐用 ssconvert,支持多 sheet,高效便捷。
linux 或者 mac 都可以安装 |
7
a132811 OP @jindaodama
谢谢推荐。 不过我是它希望作为一个 lib 使用。比如提供`xlparser.parse`, `xlparser.saveCsv` ``` >>> from xlparser import parse >>> rows = parse('some.xlsx') >>> list(rows) [['foo', 'bar'], ['看', '我', '变']] ``` 另外处理某些 xls 出现的卡死问题(依赖 column_dimensions 本身是不可靠的) @pmyile 周末忘了说,已经支持多 sheet |
8
usboy 2019-01-18 19:10:33 +08:00 1
小需求可以用在线工具: https://tableconvert.com 可以通过 import 导入 Excel,转出成 JSON,CSV,SQL,Markdown 各种格式
|