Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Python > Python & OpenOffice Spreadsheets

Reply
Thread Tools

Python & OpenOffice Spreadsheets

 
 
Gerhard Häring
Guest
Posts: n/a
 
      11-23-2009
Is there a *simple* way to read OpenOffice spreadsheets?

Bonus: write them, too?

I mean something like:

doc.cells[0][0] = "foo"
doc.save("xyz.ods")

>From a quick look, pyodf offers little more than just using a XML parser

directly.

-- Gerhard

 
Reply With Quote
 
 
 
 
Paul Rudin
Guest
Posts: n/a
 
      11-23-2009
Gerhard Häring <(E-Mail Removed)> writes:

> Is there a *simple* way to read OpenOffice spreadsheets?
>
> Bonus: write them, too?
>
> I mean something like:
>
> doc.cells[0][0] = "foo"
> doc.save("xyz.ods")
>
>>From a quick look, pyodf offers little more than just using a XML parser

> directly.



Depends on exactly what you mean by "simple" - but pyuno allows you to
read and write openoffice spreadsheets.
 
Reply With Quote
 
 
 
 
Terry Reedy
Guest
Posts: n/a
 
      11-23-2009
Krishnakant wrote:
> On Mon, 2009-11-23 at 11:12 +0000, Paul Rudin wrote:
>> Gerhard Häring <(E-Mail Removed)> writes:
>>
>>> Is there a *simple* way to read OpenOffice spreadsheets?
>>>
>>> Bonus: write them, too?
>>>
>>> I mean something like:
>>>
>>> doc.cells[0][0] = "foo"
>>> doc.save("xyz.ods")
>>>
>>> >From a quick look, pyodf offers little more than just using a XML parser
>>> directly.

>>
>> Depends on exactly what you mean by "simple" - but pyuno allows you to
>> read and write openoffice spreadsheets.

>
>
> Odfpy is a good module and is easy too.


Tarball at
http://pypi.python.org/pypi/odfpy/

Hello world example at
http://opendocumentfellowship.com/de...projects/odfpy

 
Reply With Quote
 
r
Guest
Posts: n/a
 
      11-24-2009
On Nov 23, 4:49*am, Gerhard Häring <(E-Mail Removed)> wrote:
> Is there a *simple* way to read OpenOffice spreadsheets?
>
> Bonus: write them, too?
>
> I mean something like:
>
> doc.cells[0][0] = "foo"
> doc.save("xyz.ods")
>
> >From a quick look, pyodf offers little more than just using a XML parser



I find the syntax far to complicated than it should be. Here is an
example just to insert some text..

import uno

""" Here is the sequence of things the lines do:
1. Get the uno component context from the PyUNO runtime
2. Create the UnoUrlResolver
3. Get the central desktop object
4. Declare the ServiceManager
5. Get the central desktop object
6. Access the current writer document
7. Access the document's text property
8. Create a cursor
9. Insert the text into the document """

localContext = uno.getComponentContext()
resolver = localContext.ServiceManager.createInstanceWithCont ext(
"com.sun.star.bridge.UnoUrlResolver", localContext )
ctx = resolver.resolve
( "uno:socket,host=localhost,port=2002;urp;StarOffic e.ComponentContext" )
smgr = ctx.ServiceManager
desktop = smgr.createInstanceWithContext
( "com.sun.star.frame.Desktop",ctx)
model = desktop.getCurrentComponent()
text = model.Text
cursor = text.createTextCursor()

text.insertString( cursor, "Hello World", 0 )

""" Do a nasty thing before exiting the python process. In case the
last call is a one-way call (e.g. see idl-spec of insertString),
it must be forced out of the remote-bridge caches before python
exits the process. Otherwise, the one-way call may or may not reach
the target object.
I do this here by calling a cheap synchronous call
(getPropertyValue)."""
ctx.ServiceManager

WHAT!?!?!??!

I don't mean to discredit these guys but the API should be re-thought,
and re-written! I don't care about component contexts, unoresolvers,
or little green aliens. I just want to insert 'Hello World' into cell
A3! Sheesh, There must be an easier way!
 
Reply With Quote
 
bobicanprogram
Guest
Posts: n/a
 
      11-25-2009
On Nov 23, 5:49 am, Gerhard Häring <(E-Mail Removed)> wrote:
> Is there a *simple* way to read OpenOffice spreadsheets?
>
> Bonus: write them, too?
>
> I mean something like:
>
> doc.cells[0][0] = "foo"
> doc.save("xyz.ods")
>
> >From a quick look, pyodf offers little more than just using a XML parser

>
> directly.
>
> -- Gerhard



OO Calc has an HTML file feature for auto updating fields in a
spreadsheet.

I hacked together something for a talk a few years ago:

http://www.icanprogram.com/hosug

(See Open Office Calc demo section)
While it isn't Python code it should be easy enough to convert to
Python.

bob
 
Reply With Quote
 
Lawrence D'Oliveiro
Guest
Posts: n/a
 
      11-28-2009
In message <486869af-d89f-4261-b4c2-
http://www.velocityreviews.com/forums/(E-Mail Removed)>, r wrote:

> I find the syntax far to[o] complicated than it should be.


That’s because it was originally written for Java programmers.

 
Reply With Quote
 
r
Guest
Posts: n/a
 
      11-28-2009
On Nov 27, 10:44*pm, Lawrence D'Oliveiro <l...@geek-
central.gen.new_zealand> wrote:
> In message <486869af-d89f-4261-b4c2-
>
> (E-Mail Removed)>, r wrote:
> > I find the syntax far to[o] complicated than it should be.

>
> That’s because it was originally written for Java programmers.


Well that explains the high level of asininity alright!
 
Reply With Quote
 
Paul Rudin
Guest
Posts: n/a
 
      11-28-2009
r <(E-Mail Removed)> writes:

> On Nov 23, 4:49Â*am, Gerhard Häring <(E-Mail Removed)> wrote:
>> Is there a *simple* way to read OpenOffice spreadsheets?
>>
>> Bonus: write them, too?
>>
>> I mean something like:
>>
>> doc.cells[0][0] = "foo"
>> doc.save("xyz.ods")
>>
>> >From a quick look, pyodf offers little more than just using a XML parser

>
>
> I find the syntax far to complicated than it should be. Here is an
> example just to insert some text..


[employing weapons of mass snippage]

It's true that it's a hassle, but the boiler plate stuff can be stuck in
a function and then forgotton about really.


 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Replacing spreadsheets by Python and the browser markolopa Python 5 10-02-2011 07:38 PM
Python library for reading ODF Spreadsheets Jonathan Hunt Python 2 12-04-2006 04:48 AM
Programmatically creating Excel spreadsheets in ASP.NET Raoul Snyman ASP .Net 14 04-29-2004 06:45 PM
Printing spreadsheets ~*Eternity*~ Computer Support 4 01-03-2004 11:19 PM
Re: Any Mgt Tricks for 4500/6500's.. spreadsheets or databases? Hansang Bae Cisco 1 07-09-2003 06:55 PM



Advertisments