Re: Python OpenOffice Spreadsheets

2009-11-28 Thread Paul Rudin
r rt8...@gmail.com writes:

 On Nov 23, 4:49 am, Gerhard Häring g...@ghaering.de 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.


-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Python OpenOffice Spreadsheets

2009-11-27 Thread Lawrence D'Oliveiro
In message 486869af-d89f-4261-b4c2-
f45af5d3b...@e7g2000vbi.googlegroups.com, r wrote:

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

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

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Python OpenOffice Spreadsheets

2009-11-27 Thread r
On Nov 27, 10:44 pm, Lawrence D'Oliveiro l...@geek-
central.gen.new_zealand wrote:
 In message 486869af-d89f-4261-b4c2-

 f45af5d3b...@e7g2000vbi.googlegroups.com, 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! ;-)
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Python OpenOffice Spreadsheets

2009-11-25 Thread bobicanprogram
On Nov 23, 5:49 am, Gerhard Häring g...@ghaering.de 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
-- 
http://mail.python.org/mailman/listinfo/python-list


Python OpenOffice Spreadsheets

2009-11-23 Thread Gerhard Häring
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

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Python OpenOffice Spreadsheets

2009-11-23 Thread Paul Rudin
Gerhard Häring g...@ghaering.de 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.
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Python OpenOffice Spreadsheets

2009-11-23 Thread Krishnakant
On Mon, 2009-11-23 at 11:12 +, Paul Rudin wrote:
 Gerhard Häring g...@ghaering.de 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.
http://kk.hipatia.net/public/gnukhata/gnukhata-client/ has a deb package
I built for ubuntu 9.04.
I can even provide you the distutils tarball off the list (because I
can't recall the url from I downloaded it, may be sourceforge ).
Happy hacking.
Krishnakant

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Python OpenOffice Spreadsheets

2009-11-23 Thread Chris Withers

Gerhard Häring wrote:

Is there a *simple* way to read OpenOffice spreadsheets?


Ironically, if you don't mind working in .xls, which OpenOffice handles 
just fine, you have xlrd and xlwt to do exactly what you're after:


http://www.python-excel.org/

cheers,

Chris

--
Simplistix - Content Management, Batch Processing  Python Consulting
   - http://www.simplistix.co.uk
--
http://mail.python.org/mailman/listinfo/python-list


Re: Python OpenOffice Spreadsheets

2009-11-23 Thread jfabiani
Krishnakant wrote:

 On Mon, 2009-11-23 at 11:12 +, Paul Rudin wrote:
 Gerhard Häring g...@ghaering.de 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.
 http://kk.hipatia.net/public/gnukhata/gnukhata-client/ has a deb package
 I built for ubuntu 9.04.
 I can even provide you the distutils tarball off the list (because I
 can't recall the url from I downloaded it, may be sourceforge ).
 Happy hacking.
 Krishnakant

Would you including me in your response.  I'd really like to find a py
module to allow simple use of openoffice.

Johnf
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Python OpenOffice Spreadsheets

2009-11-23 Thread Terry Reedy

Krishnakant wrote:

On Mon, 2009-11-23 at 11:12 +, Paul Rudin wrote:

Gerhard Häring g...@ghaering.de 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/development/projects/odfpy

--
http://mail.python.org/mailman/listinfo/python-list


Re: Python OpenOffice Spreadsheets

2009-11-23 Thread r
On Nov 23, 4:49 am, Gerhard Häring g...@ghaering.de 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.createInstanceWithContext(
com.sun.star.bridge.UnoUrlResolver, 
localContext )
ctx = resolver.resolve
( uno:socket,host=localhost,port=2002;urp;StarOffice.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!
-- 
http://mail.python.org/mailman/listinfo/python-list