Simple Excel to CSV converter with merged-cell propagation and cp932 encoding
Project description
xlsx2csv-mergefill
Excelファイル(.xlsx)を、データ処理に適したCSV形式へ変換するPythonライブラリです。 結合セルの補完対応により、業務システムへのデータ取り込みを容易にします。
特徴
- 結合セルの自動補完 — 結合領域を左上セルの値で埋め、データ欠損を防止
- 複数シートの一括変換 — Excelブック内の全シートを安全なファイル名で自動出力
インストール
pip install xlsx2csv_mergefill
使い方
1. ExcelファイルをCSVに一括変換
from xlsx2csv_mergefill import convert_file
# 基本的な使用方法
convert_file("input.xlsx", "output")
# シート名を数値にする場合
convert_file("input.xlsx", "output", use_numeric_sheet_names=True)
# 非表示シートも含めて出力する場合
convert_file("input.xlsx", "output", include_hidden_sheets=True)
# 結合セル補完の最大バイト数を変更する場合
convert_file("input.xlsx", "output", merge_fill_max_bytes=200)
→ 出力形式:
- 通常:
<指定パスの拡張子なし>_シート名.csvという形式で同ディレクトリに出力されます - 数値オプション使用時:
<指定パスの拡張子なし>_0.csv,<指定パスの拡張子なし>_1.csvという形式で出力されます
※ 1シートの場合でも、シート名(または数値)が付与されたファイル名で出力されます。
2. 特定シートをPythonリストとして読み込み
from xlsx2csv_mergefill import read_sheet
rows = read_sheet("input.xlsx")
# 結合セル補完の最大バイト数を変更する場合
rows = read_sheet("input.xlsx", merge_fill_max_bytes=200)
3. 全シートを辞書形式で読み込み
from xlsx2csv_mergefill import read_workbook
data = read_workbook("input.xlsx")
# 結合セル補完の最大バイト数を変更する場合
data = read_workbook("input.xlsx", merge_fill_max_bytes=200)
引数
input_path: 入力Excelファイルのパスoutput_path: 出力先のパス。プレフィックスとして扱われ、<指定パスの拡張子なし>_シート名.csvを同ディレクトリに出力します。use_numeric_sheet_names(オプション):Trueを指定すると、シート名の代わりに数値(0, 1, 2...)を使用してファイル名を生成します。デフォルトはFalse。include_hidden_sheets(オプション):Trueを指定すると、非表示シートも含めて出力します。デフォルトはFalse(非表示シートは出力しない)。merge_fill_max_bytes(オプション): 結合セルの左上セル値を結合範囲へ補完する最大バイト数です(UTF-8換算)。デフォルトは100。
戻り値
- 成功時に
0を返します。
例外
FileNotFoundErrorなどの例外を送出することがあります。
制限事項
- 入力形式は
.xlsxのみ対応(.xls非対応) - 出力形式は
UTP-8/ カンマ区切り固定 - 数式セルは計算済みの値として取得されます
- 結合セルの左上セル値が UTF-8 換算で
merge_fill_max_bytes + 1バイト以上の場合、結合範囲への補完は行いません
ライセンス
本プロジェクトはMITライセンスの下で公開されています。詳細はLICENSEファイルをご覧ください。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
xlsx2csv_mergefill-1.0.9.tar.gz
(12.1 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file xlsx2csv_mergefill-1.0.9.tar.gz.
File metadata
- Download URL: xlsx2csv_mergefill-1.0.9.tar.gz
- Upload date:
- Size: 12.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cbdd472d43c3bffa63c1291636d556971fe92aa199ae261744a5030cedffcd0b
|
|
| MD5 |
81548cbc4efa357ab48b1812fe1bbbeb
|
|
| BLAKE2b-256 |
c3432da3376b96059ba070eb734fa4a1f8d9957ff553061a7d5c6459af094884
|
File details
Details for the file xlsx2csv_mergefill-1.0.9-py3-none-any.whl.
File metadata
- Download URL: xlsx2csv_mergefill-1.0.9-py3-none-any.whl
- Upload date:
- Size: 8.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5f6662a97c774d02925eb26c5e5fbf5c88be1359fdefa3cfdecf384ccca77b83
|
|
| MD5 |
87a161003f7ee906ac4a7147558b9da3
|
|
| BLAKE2b-256 |
d9b4d0093d841a6b535728cabb98f933822071c50b3c7aaec357d205965e884d
|