Le Thu, 10 Mar 2016 19:43:16 +0100, Bernard Schoenacker <[email protected]> a écrit :
> Le Thu, 10 Mar 2016 19:26:38 +0100, > Daniel Huhardeaux <[email protected]> a écrit : > > > Le 10/03/2016 18:57, Bernard Schoenacker a écrit : > > > > [...] > > > steve à essayé et à trouvé l'astuce > > > > Il serait bon de la partager ... > > > > bonjour, > > comment déposé le fichier exemple sur la liste pour que les gens > comprennent ? > > en premier steve a employé ceci : > > **** extract.py > > # !/usr/bin/env python3 > # -*- coding : utf-8 -*- > > from bs4 import BeautifulSoup > > f = open("fichier.xml") > xml = f.read() > soup = BeautifulSoup(xml) > > for p in soup.find_all('block'): > print(p) > > **** > > ensuite : > > # !/bin/bash > > # echo > Num,Nom,Naissance,Bapteme,Mariage,Décès,Inhumation,Profession,Résidence > > out.csv > > x=1 > while read f > do > # il y a 9 champs, donc au 9e, on passe à la ligne > if [ $x -lt 9 ] > then > echo -n "$f", > # le -n permet de ne pas passer à la ligne > x=$[x+1] > else > printf "\n" > x=1 > fi > done<raw > > > ensuite je cite : > > Ensuite, j'ai ouvert le fichier dans libreoffice pour > facilement supprimer les <block> et </block> qui trainaient (oui je > sais, j'aurais pu le faire avec sed, mais je suis flemmard…) > > > slt > bernard bonjour, j'ai une qustion annexe qui facilitera le travail avec sed ... enlever le premier <block> : sed -i 's/<block>/,/g' mais pour le deuxième je fais : sed -i 's/<\/block>/,/g commentr le faire en une seule opération avec sed ? slt bernard

