Script v pythonu kterej vyhledava automaticky v jednom okne ciste google , ve druhem google s operatorem site: forum.ubuntu.cz. Hledany retezec sa zadava jenom jednou. Kazdy okno ma vlastni Back/Forward + ponechan rychlej pristup k terminalu a geditu
...
Je to trochu starší vlákno, ale...
Sice naprosto neznalý pythonu, trošku jsem si s tím programem hrál a pozměnil ho, snad to nevadí.
Zjistil jsem, jak tam přidat další tlačítko
Takže teď tlačítko "Google" vyhledává vlevo/vpravo anglicky/česky; a "Movie" hledá na imdb/csfd. Podobným způsobem se dají udělat i jiné sestavy. Taky jsem "ošetřil" aby při spuštění nebylo zbytečně vidět okno prohlížeče.
Věc co mi tam chybí, ale neumím to zařídit je: schování okna prohlížeče při klávesové zkratce(esc); zmenšení(souvisí s prvním bodem, kde je jen self.moz.set_size_request(620,0), ale zpět už nevím jak); vypozicování okna nahoru doprostřed; kurzor v text.poli po startu. Jsem otevřen všem nápadům
Jo a ještě jedna věc, google nemá rád spamboty, takže nepřehánět s enterem;)
#!/usr/bin/python
import pygtk
pygtk.require('2.0')
import gtk
import gtkmozembed
import subprocess
class PyMoz:
def delete_event(self,widget,data=None):
print("Exit")
return False
def destroy(self,widget,data=None):
gtk.main_quit()
def button_clicked(self,widget,data):
data.go_back()
def button_clicked2(self,widget,data):
data.go_forward()
def term(self,widget,data):
subprocess.Popen("gnome-terminal", shell=True)
def editor(self,widget,data):
subprocess.Popen("gedit", shell=True)
def urlgo(self,widget,i):
if i == 'go':
self.moz.load_url('http://www.google.com/search?q='+self.entry.get_text())
self.moz1.load_url('http://www.google.com/search?hl=cs&q= '+self.entry.get_text())
self.moz.set_size_request(620,600)
self.moz1.set_size_request(620,600)
if i == 'go1':
self.moz.load_url('http://www.imdb.com/find?s=all&q='+self.entry.get_text())
self.moz1.load_url('http://www.csfd.cz/hledani-filmu-hercu-reziseru-ve-filmove-databazi/?search='+self.entry.get_text())
self.moz.set_size_request(620,600)
self.moz1.set_size_request(620,600)
def __init__(self):
gtkmozembed.set_profile_path("/tmp", "ubuntu_cz_search")
self.moz = gtkmozembed.MozEmbed()
self.moz1 = gtkmozembed.MozEmbed()
box = gtk.VBox(False,10)
win = gtk.Window()
win.add(box)
hbox = gtk.HBox(False,10)
button = gtk.ToolButton(gtk.STOCK_GO_BACK)
button.connect("clicked",self.button_clicked,self.moz)
hbox.pack_start(button, False, False, 0)
button.show()
button = gtk.ToolButton(gtk.STOCK_GO_FORWARD)
button.connect("clicked",self.button_clicked2,self.moz)
hbox.pack_start(button, False, False, 0)
button.show()
self.entry = gtk.Entry()
self.go_button = gtk.Button("Google")
self.go2_button = gtk.Button("Movie")
self.entry.connect("activate",self.urlgo,'go')
self.go_button.connect("clicked",self.urlgo,'go')
self.go2_button.connect("clicked",self.urlgo,'go1')
hbox.pack_start(self.entry, True, True, 0)
hbox.pack_start(self.go_button, False, False, 0)
hbox.pack_start(self.go2_button, False, False, 0)
button = gtk.ToolButton(gtk.STOCK_EXECUTE)
button.connect("clicked",self.term,self.moz)
hbox.pack_start(button, False, False, 0)
button.show()
button = gtk.ToolButton(gtk.STOCK_EDIT)
button.connect("clicked",self.editor,self.moz)
hbox.pack_start(button, False, False, 0)
button.show()
button = gtk.ToolButton(gtk.STOCK_GO_BACK)
button.connect("clicked",self.button_clicked,self.moz1)
hbox.pack_start(button, False, False, 0)
button.show()
button = gtk.ToolButton(gtk.STOCK_GO_FORWARD)
button.connect("clicked",self.button_clicked2,self.moz1)
hbox.pack_start(button, False, False, 0)
button.show()
hbox.show()
box.pack_start(hbox,False,False)
hbox2 = gtk.HBox(True,10)
hbox2.pack_start(self.moz,True,True,0)
self.moz.show()
self.moz.load_url('')
self.moz.set_size_request(620,0)
hbox2.pack_start(self.moz1,True,True,0)
self.moz1.show()
self.moz1.load_url('')
self.moz1.set_size_request(620,0)
hbox2.show()
box.pack_start(hbox2,False,False)
title=self.moz.get_title()
win.set_title("Ubuntu CZ Search")
win.show_all()
win.connect("delete_event",self.delete_event)
win.connect("destroy",self.destroy)
if __name__ == "__main__":
PyMoz()
gtk.main()