Pregunta

Me encantaría una biblioteca de Python nativa buena para escribir XLS, pero no parece existir. Felizmente, Jython sí.

Así que estoy tratando de decidir entre jexcelapi y Apache HSSF: http://www.andykhan.com/jexcelapi/tutorial.html#writing http://poi.apache.org/hssf/quick-guide.html

(No puedo usar la automatización COM porque no estoy en Windows, e incluso si lo estuviera, no podría pagar las licencias de Office).

Mis pensamientos iniciales son que POI / HSSF es muy completo, pero también muy Java: todo parece un poco más difícil de lo que debe ser. Buena documentación, pero me duele la cabeza tratar de cerrar la brecha entre lo que describe y lo que necesito lograr.

jexcepapi parece tener una interfaz más simple y agradable (para mí), pero no tiene muy buena documentación o comunidad.

¿Cuál usarías y por qué?

¿Fue útil?

Solución

¿Qué hay de malo con xlwt ?

Otros consejos

+1 para xlwt. Vea el blog de Matt Harrison para publicaciones en cómo usar xlwt y cómo manejar grandes hojas de cálculo . Además, consulte el grupo python-excel en Google " Si usa Python para leer, escribir o manipular archivos Excel " ;.

Usaría JExcelApi, pero solo porque lo he usado antes. Nunca he tocado HSSF. El mayor show-stopper que puedo recordar es que JExcelApi no admite múltiples formatos en una celda (por ejemplo, la mitad del texto en negrita, la otra mitad en cursiva o algo así). Creo que, en general, JExcelApi es más limitado que HSSF, pero las limitaciones nunca se interpusieron en mi camino.

Y sí, la documentación es escasa para la interfaz (y no existe para los mecanismos subyacentes), pero pensé que era factible ...

Yo personalmente desaconsejo a JExcel si intenta usar algo más que un texto muy simple para sobresalir y viceversa.

las funciones más avanzadas se extraen con mucha fuga de las especificaciones subyacentes (básicamente indocumentadas) de código de bajo nivel / (documentadas) de Excel.

otro problema con el que nos encontramos es que jexcel falla fatalmente al encontrar fórmulas no válidas. y si necesita analizar las hojas de cálculo proporcionadas por el cliente, esto es un problema.

también la nueva versión de POI admite (casi) parece que tanto xls como xlsx al mismo tiempo.

Excel expone la misma API de automatización OLE utilizada por VBA a cualquier cosa que admita COM. Puede usar win32com (que se incluye con ActiveState Python de forma predeterminada) para manipular las hojas de cálculo de la misma manera que lo haría en VBA.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top