import os.path
#Methodes ==============================================================
def h1(ligne):
print "remplacement du tag ---+++ ..."
contenu = ligne.replace("---+++","
")
print "ecriture ..."
cible.write(contenu+"
\n")
print "OK"
def h2(ligne):
print "remplacement du tag ---++ ..."
contenu = ligne.replace("---++","")
print "ecriture ..."
cible.write(contenu+"
\n")
print "OK"
def h3(ligne):
print "remplacement du tag ---+ ..."
contenu = ligne.replace("---+","")
print "ecriture ..."
cible.write(contenu+"
\n")
print "OK"
def h4(ligne):
print "remplacement du tag ---++++ ..."
contenu = ligne.replace("---++++","")
print "ecriture ..."
cible.write(contenu+"
\n")
print "OK"
def tableau(ligne):
print "Ligne de tableau trouve"
contenu = ligne.replace("|","")
if "[[http" in line or "[[https" in line:
lienHttp(contenu)
elif "[[" in line:
lien(contenu)
print "ecriture ..."
cible.write(" | "+contenu+" |
")
print "OK"
def lien(ligne):
print "Lien trouve"
contenu = ligne.replace("[[","")
contenu = contenu.replace("]]"," ")
print "ecriture ..."
cible.write(contenu+"\n")
def lienHttp(ligne):
print "Lien trouve"
contenu = ligne.replace("[[","")
contenu = contenu.replace("]]"," ")
print "ecriture ..."
cible.write(contenu+"\n")
#========================================================================
#Programme principal
if not os.path.exists("Conversion"):
os.makedirs("Conversion") #creation du dossier
dossier=[] #liste qui contiendra l'architecture de l'arborescence en y renseignant les dossier avec leurs chemins
fichier=[] #liste qui contiendra les noms de fichiers ainsi que leurs chemins
path="data"
for root, dirs, files in os.walk(path): #root veut dire dossier, dirs les sous dossier et files les fichiers
for i in files:
dossier.append(os.path.join(root)) #Ajoute a la liste le chemin du dossier
fichier.append(os.path.join(root, i)) #ajoute a la liste le chemin, ainsi que le nom du fichier
for j in range(len(fichier)):
#{ boucle qui parcours les fichiers, tant qu'il y en a
if not os.path.exists("Conversion/" + dossier[j]): #Creation d'un dossier "conversion" afin d'y placer les nouveaux fichiers (/!\ si le dossier exciste deja, le script plante)
print "creation du dossier " + dossier[j] + " ..."
os.makedirs("Conversion/" + dossier[j]) # recreation de l'arborescence dans notre dossier de conversion
print "OK"
print "Converion de " + fichier[j] + " ..."
creation = open("Conversion/"+fichier[j]+".html", 'w') #creer le fichier avec le meme nom dans le dossier de conversion et lui ajoute ".html"
creation.close #fermeture du fichier
cible = open("Conversion/"+fichier[j]+".html", 'a') #edition du fichier precedement cree ('a' veut dire que nous ajoutons a chaque fois des elements a la fin du fichier)
print "Creation ..."
cible.write("\n") #ajout les premieres lignes html
cible.write("\n")
print "OK"
print "lecture du fichier "+fichier[j] + " ..."
source = open(fichier[j], 'r')
numero = 0
while True:
#{
line = source.readline()
if line == "":
#ici, il n'y a plus de ligne, on sort de la boucle
print "lignes totales : ",numero
print "=== Fin du document ==="
break
#ici, il y a une ligne
numero = numero+1
print "Lecture de la ligne ",numero, ":"
test = line.split(' ', 1)[0] # test contient le premier mot de la ligne
if "%META" in line:
print "suppression de la ligne %META"
elif test == "---+++":
h1(line)
elif test == "---++":
h2(line)
elif test == "---+":
h3(line)
elif test == "---++++":
h4(line)
elif "|" in line:
tableau(line)
elif "[[http" in line or "[[https" in line:
lienHttp(line)
elif "[[" in line:
lien(line)
else:
print "ecriture ..."
cible.write(line+"\n")
print "OK"
#}
source.close()
cible.write("
")
cible.closse()
#}
#Fin du programme