Linux / PythonからXLSを作成するには、どのライブラリを使用する必要がありますか?
質問
XLSを記述するための良いネイティブPythonライブラリが欲しいのですが、存在しないようです。幸いなことに、Jythonはそうしています。
だから私はjexcelapiとApache HSSFの間で決定しようとしています: http://www.andykhan.com/jexcelapi/tutorial.html#writing http://poi.apache.org/hssf/quick-guide.html
(Windowsを使用していないため、COMオートメーションを使用できません。使用していたとしても、Officeライセンスを購入する余裕はありませんでした。)
私の最初の考えは、POI / HSSFは非常に徹底的であるが、非常にJavaでもあるということです。すべてが必要以上に難しいようです。優れたドキュメントですが、説明と達成する必要があるものとのギャップを埋めようとして頭が痛いです。
jexcepapiは、よりシンプルで優れた(私にとって)インターフェースを持っているように見えますが、あまり良いドキュメントやコミュニティを持っていません。
どちらを使用しますか、なぜですか?
解決
xlwt の何が問題ですか?
他のヒント
+1。 xlwtの使用方法および大きなスプレッドシートの処理方法。また、 python-excel グループもご覧ください。 Google" Pythonを使用してExcelファイルの読み取り、書き込み、またはその他の操作を行う場合"。
JExcelApiを使用しますが、これは以前に使用したことがあるからです。 HSSFに触れたことがない。私が思い出すことができる最大のショーストッパーは、JExcelApiが1つのセルで複数の形式をサポートしていないことです(たとえば、テキストの半分を太字、残りの半分を斜体など)。一般に、JExcelApiはHSSFよりも制限されていると思いますが、制限が私の邪魔になることはありませんでした。
そして、はい、インターフェースのドキュメントはまばらです(そして、基礎となるメカニズムには存在しません)が、私はそれが実行可能であると思いました...
iエクセルに非常にシンプルなテキスト以外の何かを使用したい場合は、JExcelを個人的に非推奨にします。
より高度な機能は、基礎となる(基本的に文書化されていない)低レベルコード/(文書化された)Excel仕様から非常に漏れやすく抽象化されています。
私たちが遭遇した別の問題は、無効な数式に遭遇するとjexcelが致命的に失敗することです。 クライアントが提供するスプレッドシートを解析する必要がある場合、これは問題です。
また、新しいPOIバージョンは(ほとんど)xlsとxlsxの両方を同時にサポートします。
Excelは、VBAで使用されるのと同じOLEオートメーションAPIをCOMをサポートするものに公開します。 win32com(デフォルトではActiveState Pythonに含まれています)を使用して、VBAで行うのとほぼ同じ方法でスプレッドシートを操作できます。