Bonjour,
J'utilise openoffice 2.4, et je cherche un module ou un exemple de
script qui me permettrait d'extraire des données d'une feuille de calcul.
Le but est au final d'avoir un fichier SQL.
Il n'y a aucun "calcul" dans la feuille, ce sont juste des coordonées
postales qu'il faut insérer dans une base SQL.
Mes quelques recherches:
http://www.google.com/search?q=python+data+oocalc
http://www.google.com/search?q=python+extract+openoffice+spreadshee
Le mieux que j'ai pu entirer:
http://www.oooforum.org/forum/viewtopic.phtml?t=20830
Mais c'est tellement vieux...
Bonjour, J'utilise openoffice 2.4, et je cherche un module ou un exemple de script qui me permettrait d'extraire des données d'une feuille de calcul. Le but est au final d'avoir un fichier SQL. Il n'y a aucun "calcul" dans la feuille, ce sont juste des coordonées postales qu'il faut insérer dans une base SQL.
Alors exporte ton fichier en .csv, et utilise le module éponyme de la bibliothèque standard pour le lire et générer le SQL.
Mihamina Rakotomandimby a écrit :
Bonjour,
J'utilise openoffice 2.4, et je cherche un module ou un exemple de
script qui me permettrait d'extraire des données d'une feuille de calcul.
Le but est au final d'avoir un fichier SQL.
Il n'y a aucun "calcul" dans la feuille, ce sont juste des coordonées
postales qu'il faut insérer dans une base SQL.
Alors exporte ton fichier en .csv, et utilise le module éponyme de la
bibliothèque standard pour le lire et générer le SQL.
Bonjour, J'utilise openoffice 2.4, et je cherche un module ou un exemple de script qui me permettrait d'extraire des données d'une feuille de calcul. Le but est au final d'avoir un fichier SQL. Il n'y a aucun "calcul" dans la feuille, ce sont juste des coordonées postales qu'il faut insérer dans une base SQL.
Alors exporte ton fichier en .csv, et utilise le module éponyme de la bibliothèque standard pour le lire et générer le SQL.
Christophe
Mihamina Rakotomandimby a écrit :
Bonjour, J'utilise openoffice 2.4, et je cherche un module ou un exemple de script qui me permettrait d'extraire des données d'une feuille de calcul. Le but est au final d'avoir un fichier SQL. Il n'y a aucun "calcul" dans la feuille, ce sont juste des coordonées postales qu'il faut insérer dans une base SQL. Mes quelques recherches: http://www.google.com/search?q=python+data+oocalc http://www.google.com/search?q=python+extract+openoffice+spreadshee
Le mieux que j'ai pu entirer: http://www.oooforum.org/forum/viewtopic.phtml?t 830 Mais c'est tellement vieux...
Ai-je les mauvais mots clés?
J'ai justement un petit projet à venir ou je dois plus ou moins faire la même chose, même si le format de sortie est différent donc la solution m'interesse aussi.
Mihamina Rakotomandimby a écrit :
Bonjour,
J'utilise openoffice 2.4, et je cherche un module ou un exemple de
script qui me permettrait d'extraire des données d'une feuille de calcul.
Le but est au final d'avoir un fichier SQL.
Il n'y a aucun "calcul" dans la feuille, ce sont juste des coordonées
postales qu'il faut insérer dans une base SQL.
Mes quelques recherches:
http://www.google.com/search?q=python+data+oocalc
http://www.google.com/search?q=python+extract+openoffice+spreadshee
Le mieux que j'ai pu entirer:
http://www.oooforum.org/forum/viewtopic.phtml?t 830
Mais c'est tellement vieux...
Ai-je les mauvais mots clés?
J'ai justement un petit projet à venir ou je dois plus ou moins faire la
même chose, même si le format de sortie est différent donc la solution
m'interesse aussi.
Bonjour, J'utilise openoffice 2.4, et je cherche un module ou un exemple de script qui me permettrait d'extraire des données d'une feuille de calcul. Le but est au final d'avoir un fichier SQL. Il n'y a aucun "calcul" dans la feuille, ce sont juste des coordonées postales qu'il faut insérer dans une base SQL. Mes quelques recherches: http://www.google.com/search?q=python+data+oocalc http://www.google.com/search?q=python+extract+openoffice+spreadshee
Le mieux que j'ai pu entirer: http://www.oooforum.org/forum/viewtopic.phtml?t 830 Mais c'est tellement vieux...
Ai-je les mauvais mots clés?
J'ai justement un petit projet à venir ou je dois plus ou moins faire la même chose, même si le format de sortie est différent donc la solution m'interesse aussi.
William Dode
On 03-10-2008, Mihamina Rakotomandimby wrote:
Bonjour, J'utilise openoffice 2.4, et je cherche un module ou un exemple de script qui me permettrait d'extraire des données d'une feuille de calcul.
Tu peux "simplement" lire le document, c'est du xml zippé.
-- William Dodé - http://flibuste.net Informaticien Indépendant
On 03-10-2008, Mihamina Rakotomandimby wrote:
Bonjour,
J'utilise openoffice 2.4, et je cherche un module ou un exemple de
script qui me permettrait d'extraire des données d'une feuille de calcul.
Tu peux "simplement" lire le document, c'est du xml zippé.
--
William Dodé - http://flibuste.net
Informaticien Indépendant
Je n'aime pas cette chose. Bon... a defaut, il faut ce qu'il faut...
Il y a certainement moyen de passer par le binding python-openoffice. Je me contentais de te soumettre une solution simple.
Pierre Maurette
Mihamina Rakotomandimby, le 03/10/2008 a écrit :
Bonjour, J'utilise openoffice 2.4, et je cherche un module ou un exemple de script qui me permettrait d'extraire des données d'une feuille de calcul. Le but est au final d'avoir un fichier SQL. Il n'y a aucun "calcul" dans la feuille, ce sont juste des coordonées postales qu'il faut insérer dans une base SQL. Mes quelques recherches: http://www.google.com/search?q=python+data+oocalc http://www.google.com/search?q=python+extract+openoffice+spreadshee
Le mieux que j'ai pu entirer: http://www.oooforum.org/forum/viewtopic.phtml?t 830 Mais c'est tellement vieux...
Ai-je les mauvais mots clés?
J'avais fait quelques macros en Python pour OOo Writer et à l'occasion j'avais jeté un oeil sur les API OOo, UNO, PyUNO et tout ça. J'en avais pleuré... Certainement très puissant, mais lourd. En plus la documentation devait être "traduite en Python". Et enfin il est possible - mais je n'en suis pa certain - que cette approche vous lie à une installation d'OOo sur la machine de traitement, ce qui peut être une contrainte. Autant alors trifouiller directement dans les .ods. Une manip pour préciser ce qu'écrit William: vous prenez votre .ods, vous le renommer en .zip et vous regardez ce qu'il contient avec ce qui va bien sur votre OS. Ou vous le passez directement au zipfile. Vous extrayez ensuite contents.xlm et regardez son contenu. Vous verrez qu'extraire vos données est certainement très simple. Personnellement je regarderais du coté de BeautifulSoup parce que je suis dedans et que je n'ai pas encore d'expérience en Python, mais il y certainemnt plus simple dans la fourniture standard. En plus BeautifullSoup est assez lent.
-- Pierre Maurette
Mihamina Rakotomandimby, le 03/10/2008 a écrit :
Bonjour,
J'utilise openoffice 2.4, et je cherche un module ou un exemple de script qui
me permettrait d'extraire des données d'une feuille de calcul.
Le but est au final d'avoir un fichier SQL.
Il n'y a aucun "calcul" dans la feuille, ce sont juste des coordonées
postales qu'il faut insérer dans une base SQL.
Mes quelques recherches:
http://www.google.com/search?q=python+data+oocalc
http://www.google.com/search?q=python+extract+openoffice+spreadshee
Le mieux que j'ai pu entirer:
http://www.oooforum.org/forum/viewtopic.phtml?t 830
Mais c'est tellement vieux...
Ai-je les mauvais mots clés?
J'avais fait quelques macros en Python pour OOo Writer et à l'occasion
j'avais jeté un oeil sur les API OOo, UNO, PyUNO et tout ça. J'en avais
pleuré... Certainement très puissant, mais lourd. En plus la
documentation devait être "traduite en Python". Et enfin il est
possible - mais je n'en suis pa certain - que cette approche vous lie à
une installation d'OOo sur la machine de traitement, ce qui peut être
une contrainte.
Autant alors trifouiller directement dans les .ods. Une manip pour
préciser ce qu'écrit William: vous prenez votre .ods, vous le renommer
en .zip et vous regardez ce qu'il contient avec ce qui va bien sur
votre OS. Ou vous le passez directement au zipfile. Vous extrayez
ensuite contents.xlm et regardez son contenu. Vous verrez qu'extraire
vos données est certainement très simple. Personnellement je
regarderais du coté de BeautifulSoup parce que je suis dedans et que je
n'ai pas encore d'expérience en Python, mais il y certainemnt plus
simple dans la fourniture standard. En plus BeautifullSoup est assez
lent.
Bonjour, J'utilise openoffice 2.4, et je cherche un module ou un exemple de script qui me permettrait d'extraire des données d'une feuille de calcul. Le but est au final d'avoir un fichier SQL. Il n'y a aucun "calcul" dans la feuille, ce sont juste des coordonées postales qu'il faut insérer dans une base SQL. Mes quelques recherches: http://www.google.com/search?q=python+data+oocalc http://www.google.com/search?q=python+extract+openoffice+spreadshee
Le mieux que j'ai pu entirer: http://www.oooforum.org/forum/viewtopic.phtml?t 830 Mais c'est tellement vieux...
Ai-je les mauvais mots clés?
J'avais fait quelques macros en Python pour OOo Writer et à l'occasion j'avais jeté un oeil sur les API OOo, UNO, PyUNO et tout ça. J'en avais pleuré... Certainement très puissant, mais lourd. En plus la documentation devait être "traduite en Python". Et enfin il est possible - mais je n'en suis pa certain - que cette approche vous lie à une installation d'OOo sur la machine de traitement, ce qui peut être une contrainte. Autant alors trifouiller directement dans les .ods. Une manip pour préciser ce qu'écrit William: vous prenez votre .ods, vous le renommer en .zip et vous regardez ce qu'il contient avec ce qui va bien sur votre OS. Ou vous le passez directement au zipfile. Vous extrayez ensuite contents.xlm et regardez son contenu. Vous verrez qu'extraire vos données est certainement très simple. Personnellement je regarderais du coté de BeautifulSoup parce que je suis dedans et que je n'ai pas encore d'expérience en Python, mais il y certainemnt plus simple dans la fourniture standard. En plus BeautifullSoup est assez lent.
-- Pierre Maurette
Pierre Maurette
Mihamina Rakotomandimby, le 03/10/2008 a écrit :
Bonjour, J'utilise openoffice 2.4, et je cherche un module ou un exemple de script qui me permettrait d'extraire des données d'une feuille de calcul. Le but est au final d'avoir un fichier SQL. Il n'y a aucun "calcul" dans la feuille, ce sont juste des coordonées postales qu'il faut insérer dans une base SQL.
J'ai fait un test avec zipfile et BeautifullSoup, ça semble jouable. Avec une simple feuille contenant 3 lignes de deux éléments, nom et code par exemple:
#!/usr/bin/python # -*- coding: utf-8 -*-
import zipfile from BeautifulSoup import BeautifulStoneSoup
soup = BeautifulStoneSoup(zipfile.ZipFile('test.ods').read('content.xml')) #print soup.prettify() #print soup.find('office:spreadsheet').prettify() for _1 in soup.findAll('table:table', attrs={'table:name':True}): print 'Feuille:', _1.attrs[0][1] for _2 in _1.findAll('table:table-row'): print '---------------row-------------------' for cell in _2.findAll('table:table-cell'): __ = cell.find('text:p') if __: print __.contents[0]
-- Pierre Maurette
Mihamina Rakotomandimby, le 03/10/2008 a écrit :
Bonjour,
J'utilise openoffice 2.4, et je cherche un module ou un exemple de script qui
me permettrait d'extraire des données d'une feuille de calcul.
Le but est au final d'avoir un fichier SQL.
Il n'y a aucun "calcul" dans la feuille, ce sont juste des coordonées
postales qu'il faut insérer dans une base SQL.
J'ai fait un test avec zipfile et BeautifullSoup, ça semble jouable.
Avec une simple feuille contenant 3 lignes de deux éléments, nom et
code par exemple:
#!/usr/bin/python
# -*- coding: utf-8 -*-
import zipfile
from BeautifulSoup import BeautifulStoneSoup
soup =
BeautifulStoneSoup(zipfile.ZipFile('test.ods').read('content.xml'))
#print soup.prettify()
#print soup.find('office:spreadsheet').prettify()
for _1 in soup.findAll('table:table', attrs={'table:name':True}):
print 'Feuille:', _1.attrs[0][1]
for _2 in _1.findAll('table:table-row'):
print '---------------row-------------------'
for cell in _2.findAll('table:table-cell'):
__ = cell.find('text:p')
if __:
print __.contents[0]
Bonjour, J'utilise openoffice 2.4, et je cherche un module ou un exemple de script qui me permettrait d'extraire des données d'une feuille de calcul. Le but est au final d'avoir un fichier SQL. Il n'y a aucun "calcul" dans la feuille, ce sont juste des coordonées postales qu'il faut insérer dans une base SQL.
J'ai fait un test avec zipfile et BeautifullSoup, ça semble jouable. Avec une simple feuille contenant 3 lignes de deux éléments, nom et code par exemple:
#!/usr/bin/python # -*- coding: utf-8 -*-
import zipfile from BeautifulSoup import BeautifulStoneSoup
soup = BeautifulStoneSoup(zipfile.ZipFile('test.ods').read('content.xml')) #print soup.prettify() #print soup.find('office:spreadsheet').prettify() for _1 in soup.findAll('table:table', attrs={'table:name':True}): print 'Feuille:', _1.attrs[0][1] for _2 in _1.findAll('table:table-row'): print '---------------row-------------------' for cell in _2.findAll('table:table-cell'): __ = cell.find('text:p') if __: print __.contents[0]
-- Pierre Maurette
Méta-MCI \(MVP\)
Bonsoir !
J'ai une classe, pour manipuler OOo depuis Python.
Mais, tu vas pleurer tes choix d'OS, car ça utilise COM, et, donc, ne fonctionne qu'avec la famille des OS Windows...
@-salutations -- Michel Claveau
Bonsoir !
J'ai une classe, pour manipuler OOo depuis Python.
Mais, tu vas pleurer tes choix d'OS, car ça utilise COM, et, donc, ne
fonctionne qu'avec la famille des OS Windows...
J'ai une classe, pour manipuler OOo depuis Python.
Mais, tu vas pleurer tes choix d'OS, car ça utilise COM, et, donc, ne fonctionne qu'avec la famille des OS Windows...
ça dialogue avec OO ?
-- William Dodé - http://flibuste.net Informaticien Indépendant
Michel Claveau - NoSpam SVP ; merci
Re !
ça dialogue avec OO ?
Oui. C'est un peu l'équivalent de ma classe pour Word, mais en moins complet / puissant, car les fonctionnalités COM de OOo sont plus limitées et nettement plus complexes.
Mais, on peut piloter : - l'ouverture et la fermeture d' OOo - l'ouverture et la fermeture d'un document - la sauvegarde d'un document - rendre OOo visible ou invisible - imprimer (impression par défaut) - chercher une chaîne - remplacer - lire le contenu (traduit en texte brut) - écrire du texte
et, c'est à peu près tout. Mais, ça me suffit pour pouvoir utiliser OOo, chez des clients, comme générateur de documents, à partir de documents-types, gérés par les utilisateurs, et avec des "remplacer" + imprimer ou sauver sous.
Si ça intéresse quelqu'un, je peux la re-publier, mais "en l'état" (doc quasi inexistante, commentaire minimas, peu d'exemples, ...)
@-salutations -- Michel Claveau
Re !
ça dialogue avec OO ?
Oui. C'est un peu l'équivalent de ma classe pour Word, mais en moins
complet / puissant, car les fonctionnalités COM de OOo sont plus
limitées et nettement plus complexes.
Mais, on peut piloter :
- l'ouverture et la fermeture d' OOo
- l'ouverture et la fermeture d'un document
- la sauvegarde d'un document
- rendre OOo visible ou invisible
- imprimer (impression par défaut)
- chercher une chaîne
- remplacer
- lire le contenu (traduit en texte brut)
- écrire du texte
et, c'est à peu près tout. Mais, ça me suffit pour pouvoir utiliser OOo,
chez des clients, comme générateur de documents, à partir de
documents-types, gérés par les utilisateurs, et avec des "remplacer" +
imprimer ou sauver sous.
Si ça intéresse quelqu'un, je peux la re-publier, mais "en l'état" (doc
quasi inexistante, commentaire minimas, peu d'exemples, ...)
Oui. C'est un peu l'équivalent de ma classe pour Word, mais en moins complet / puissant, car les fonctionnalités COM de OOo sont plus limitées et nettement plus complexes.
Mais, on peut piloter : - l'ouverture et la fermeture d' OOo - l'ouverture et la fermeture d'un document - la sauvegarde d'un document - rendre OOo visible ou invisible - imprimer (impression par défaut) - chercher une chaîne - remplacer - lire le contenu (traduit en texte brut) - écrire du texte
et, c'est à peu près tout. Mais, ça me suffit pour pouvoir utiliser OOo, chez des clients, comme générateur de documents, à partir de documents-types, gérés par les utilisateurs, et avec des "remplacer" + imprimer ou sauver sous.
Si ça intéresse quelqu'un, je peux la re-publier, mais "en l'état" (doc quasi inexistante, commentaire minimas, peu d'exemples, ...)
@-salutations -- Michel Claveau
William Dode
On 04-10-2008, Michel Claveau - NoSpam SVP ; merci wrote:
Re !
ça dialogue avec OO ?
Oui. C'est un peu l'équivalent de ma classe pour Word, mais en moins complet / puissant, car les fonctionnalités COM de OOo sont plus limitées et nettement plus complexes.
Ca ouvre l'interface d'OO ? Est-ce que ce n'est pas trop lent ?
En xml j'ai fait aussi du chercher/remplacer, l'avantage c'est que c'est très rapide et que ça ne nécessite pas OO sur le serveur... Par contre ce n'est pas extrêmement simple dans le sens où j'ai été obligé de faire ça empiriquement en regardant le contenu d'un xml existant. Mon petit doigt me dit que tu n'as pas trouvé non plus de doc très claire ?
-- William Dodé - http://flibuste.net Informaticien Indépendant
On 04-10-2008, Michel Claveau - NoSpam SVP ; merci wrote:
Re !
ça dialogue avec OO ?
Oui. C'est un peu l'équivalent de ma classe pour Word, mais en moins
complet / puissant, car les fonctionnalités COM de OOo sont plus
limitées et nettement plus complexes.
Ca ouvre l'interface d'OO ?
Est-ce que ce n'est pas trop lent ?
En xml j'ai fait aussi du chercher/remplacer, l'avantage c'est que c'est
très rapide et que ça ne nécessite pas OO sur le serveur...
Par contre ce n'est pas extrêmement simple dans le sens où j'ai été
obligé de faire ça empiriquement en regardant le contenu d'un xml
existant. Mon petit doigt me dit que tu n'as pas trouvé non plus de doc
très claire ?
--
William Dodé - http://flibuste.net
Informaticien Indépendant
On 04-10-2008, Michel Claveau - NoSpam SVP ; merci wrote:
Re !
ça dialogue avec OO ?
Oui. C'est un peu l'équivalent de ma classe pour Word, mais en moins complet / puissant, car les fonctionnalités COM de OOo sont plus limitées et nettement plus complexes.
Ca ouvre l'interface d'OO ? Est-ce que ce n'est pas trop lent ?
En xml j'ai fait aussi du chercher/remplacer, l'avantage c'est que c'est très rapide et que ça ne nécessite pas OO sur le serveur... Par contre ce n'est pas extrêmement simple dans le sens où j'ai été obligé de faire ça empiriquement en regardant le contenu d'un xml existant. Mon petit doigt me dit que tu n'as pas trouvé non plus de doc très claire ?
-- William Dodé - http://flibuste.net Informaticien Indépendant