1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
|
from Tkinter import *
import httplib
def get_filter(event) :
global select, requete
if int(select.curselection()[0]) == 0 :
requete.delete(0.0, END)
requete.insert('0.0', '/search?q='+'intext:'+choosed.get().replace(' ','+'))
if int(select.curselection()[0]) == 1 :
requete.delete(0.0, END)
requete.insert('0.0', '/search?q='+'allintext:'+choosed.get().replace(' ','+'))
if int(select.curselection()[0]) == 2 :
requete.delete(0.0, END)
requete.insert('0.0', '/search?q='+'intitle:'+choosed.get().replace(' ','+'))
if int(select.curselection()[0]) == 3 :
requete.delete(0.0, END)
requete.insert('0.0', '/search?q='+'allintitle:'+choosed.get().replace(' ','+'))
def rechercher() :
motor=httplib.HTTPConnection('www.google.com')
headers={"Content-type":"application/x-www-form-urlencoded","Accept":"text/plain"}
motor.request('POST', requete.get(0.0, END), body=None, headers=headers) #Ca bug ici !!! peut etre dans la config des headers ???
response=motor.getresponse()
response.read() #Si vous passez une requète contenant des caractères non-ASCII et avez une page html qui sort ici c'est bon.
fen=Tk()
info_filter=Label(fen, text='Filtres:')
select=Listbox(fen, height=4)
select.insert(0, 'intext')
select.insert(1, 'allintext')
select.insert(2, 'intitle')
select.insert(3, 'allintitle')
select.bind('<Double-Button-1>', get_filter)
info_search=Label(fen, text='Search:')
choosed=Entry(fen)
info=Label(fen, text='Entrez un mot a rechercher\n Avec un|des caractères non-ASCII\net sélectionner le filtre a appliquer.')
info_request=Label(fen, text='request')
but=Button(fen, text='Envoyer requète', command=rechercher)
requete=Text(fen, height=1, width=25)
requete.insert('0.0', '/search?q=')
info_filter.grid(row=0, column=0)
select.grid(row=0, column=1)
info_search.grid(row=1, column=0)
choosed.grid(row=1, column=1)
info.grid(row=0, rowspan=2, column=2)
info_request.grid(row=2, column=0)
requete.grid(row=2, column=1, columnspan=2, sticky=EW)
but.grid(row=3, column=0, columnspan=3, sticky=EW)
choosed.focus_set()
fen.mainloop() |
Partager