Search Word est un script qui permet de rechercher une chaine de caractère dans un fichier ou même dans un dossier sans passer par l'ouverture du fichier.
Il peut être utile lorsque l'on cherche un mot que l'on sait dans un dossier par exemple mais qu'on ne sait pas dans quel fichier.
C'est un script d'amateur débutant alors soyez tolérant car je sais que j'aurais éventuellement pu faire plus optimisé.
Source / Exemple :
from Tkinter import *
import tkFileDialog
import os
from ScrolledText import *
def parcourir():
# Permet de choisir un fichier
global nom
nom1 = tkFileDialog.askdirectory(parent=fen1,initialdir=os.getcwd(),title='Choisissez le fichier ')
# Remplace les / par des \ dans le chemin du fichier
nom=nom1.replace('/','\\')
fen1.bind('<Return>', lire)
def lire():
def RetourFen1():
fen1.deiconify()
fen2.destroy()
# récupération du mot ou de la chaine à rechercher
fichier=ent1.get()
fen2=Tk()
fen2.title('Search Word. -V1.0 par S.Pillot')
fen1.withdraw()
# Mise en place du fichier temporaire contenant les infos
che= " >rep.txt"
commande="find /I /N \""+ fichier +"\" \""+ nom+"\\*.*\" "+che
#print commande
a=os.system(commande)
# Reinitialisation de l'ent1
ent1.delete(0,END)
texte = ScrolledText(fen2, width = 75, height = 35, font = "Arial 10", relief = "groove")
bou1=Button(fen2, text='Quitter',command=RetourFen1)
# Ouverture du fichier temporaire
b=open("rep.txt","r")
for elem in b.readlines():
texte.insert(END, elem)
b.close()
# Suppression du fichier temporaire
os.system("del /Q rep.txt")
texte.pack()
bou1.pack()
def parcourir1():
global nom
nom = tkFileDialog.askopenfilename(parent=fen1,initialdir=os.getcwd(),title='Choisissez le fichier ')
fen1.bind('<Return>', lire1)
def lire1():
def RetourFen1():
fen1.deiconify()
fen2.destroy()
fichier=ent1.get()
fen2=Tk()
fen2.title('Search Word. -V1.0 par S.Pillot')
fen1.withdraw()
che= " >rep.txt"
commande="find /I /N \""+ fichier +"\" \""+ nom+"\" "+che
a=os.system(commande)
ent1.delete(0,END)
texte = ScrolledText(fen2, width = 75, height = 35, font = "Arial 10", relief = "groove")
bou1=Button(fen2, text='Quitter',command=RetourFen1)
b=open("rep.txt","r")
for elem in b.readlines():
texte.insert(END, elem)
b.close()
os.system("del /Q rep.txt")
texte.pack()
bou1.pack()
fen1=Tk()
fen1.title('Search Word. -V1.0 par S.Pillot')
text1=Label(fen1, text='Entrer le mot recherché', fg='red')
text1.grid(column = 0,row=0)
ent1=Entry(fen1)
ent1.grid(column=1,row=0)
text2=Button(fen1, text='Choisissez le dossier', command=parcourir)
text2.grid(column=2,row=1)
text3=Button(fen1, text='Choisissez le fichier ', command=parcourir1)
text3.grid(column=2,row=0)
bou2=Button(fen1,text='Lecture Dossier',command=lire)
bou2.grid(column=3,row=1 )
bou3=Button(fen1,text='Lecture Fichier ',command=lire1)
bou3.grid(column=3,row=0 )
bou1=Button(fen1, text='Quitter',command=fen1.destroy)
bou1.grid(column=0,row=5)
fen1.mainloop()
Conclusion :
Petit travail de débutant mais peut être intéressant pour les personnes ne voulant pas ouvrir fichier par fichier pour retrouver un mot
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.