Python, OpenOffice: Programmatically Manipulating

2020-02-05 20:53发布

问题:

I have an spreadsheet-based automated report that needs to be created daily, with some charts, aggregating functions (e.g. SUM and AVERAGE) and formatted cells (Dates, percentage, etc.).

I have tried to write these results directly to an Excel file, but Python's xlwt and xlrd don'y support charts and functions.

Moreover, trying to open an existing, formatted Excel file and changing some cell's values ended up erasing all charts and functions in the existing file.

Is there a way to write charts and functions to an OpenOffice spreadsheet, or at least change cells in an existing spreadsheet without erasing data? If there is a Pythonic way to do it, I can easily convert the OO file into an Excel file and deliver it.

回答1:

You can use PyUNO, a Python library to use UNO API.

Here is a Python example to do some manipulations in a Calc document.



回答2:

Are you looking for this: http://ooopy.sourceforge.net/

Open Office.org API's accessible from Python?

Or this? http://api.openoffice.org/

The OpenOffice.org API Project?

This may be helpful, also: http://wiki.services.openoffice.org/wiki/Python