Advertisement
hackloper775

Navgtk2py

Apr 13th, 2013
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.97 KB | None | 0 0
  1. #!/usr/bin/env python
  2.  
  3. # Navegador Web en Python
  4. # Gracias a Webkit y Python
  5. # Eres libre de hacer lo quieras con este script :D
  6. # Por ()
  7.  
  8. import pygtk
  9. pygtk.require('2.0')
  10. import gtk, gobject
  11. import webkit
  12.  
  13. uri = "http://www.google.com"
  14. nombre = "WebBrowser"; n = 1
  15. class nav():
  16.     def __init__(self):
  17.         self.uri = uri
  18.         self.n = n; self.nombre = nombre
  19.         self.ver = webkit.WebView()
  20.         self.ventana = gtk.Window(gtk.WINDOW_TOPLEVEL)
  21.         self.ventana.set_position(gtk.WIN_POS_CENTER)
  22.         self.ventana.set_default_size(700, 500)
  23.         self.ventana.maximize()
  24.         self.ventana.connect("destroy", self.salir)
  25.         self.ventana.set_title(self.nombre)
  26.         self.scrolled_window = gtk.ScrolledWindow()
  27.         self.vbox = gtk.VBox(gtk.FALSE,0)
  28.         self.nbox = gtk.VBox(gtk.FALSE,0)
  29.         self.hbox = gtk.HBox(gtk.FALSE,0)
  30.         self.atras = gtk.ToolButton(gtk.STOCK_GO_BACK)
  31.         self.adelante = gtk.ToolButton(gtk.STOCK_GO_FORWARD)
  32.         self.brecargar = gtk.ToolButton(gtk.STOCK_REFRESH)
  33.         self.bfrenar = gtk.ToolButton(gtk.STOCK_CANCEL)
  34.         self.busqueda = gtk.ToolButton(gtk.STOCK_FIND)
  35.         self.url = gtk.Entry()
  36.         self.url.set_icon_from_stock('secondary', 'gtk-apply')
  37.     self.scrolled_window.add(self.ver)
  38.         self.status = gtk.Label("100")
  39.         self.vbox.pack_start(self.busqueda,gtk.FALSE,gtk.FALSE,0)
  40.         self.vbox.pack_start(self.atras,gtk.FALSE,gtk.FALSE,20)
  41.         self.vbox.pack_start(self.adelante,gtk.FALSE,gtk.FALSE,20)
  42.         self.vbox.pack_start(self.brecargar,gtk.FALSE,gtk.FALSE,20)
  43.         self.vbox.pack_start(self.bfrenar,gtk.FALSE,gtk.FALSE,20)
  44.         self.vbox.pack_start(self.status,gtk.FALSE,gtk.FALSE,0)
  45.         self.nbox.pack_start(self.url,gtk.FALSE,gtk.FALSE,0)
  46.         self.nbox.pack_start(self.scrolled_window,gtk.TRUE,gtk.TRUE,0)
  47.         self.hbox.pack_start(self.vbox,gtk.FALSE,gtk.FALSE,0)
  48.         self.hbox.pack_start(self.nbox,gtk.TRUE,gtk.TRUE,0)
  49.         self.url.set_text(self.uri)
  50.         self.busqueda.connect('clicked',self.mostrar)
  51.         self.url.connect('icon-press', self.cargar)
  52.         self.url.connect('activate', self.cargar)
  53.         self.brecargar.connect('clicked', self.recargar)
  54.         self.bfrenar.connect('clicked', self.frenar)
  55.         self.atras.connect('clicked', self.back)
  56.         self.adelante.connect('clicked', self.forward)
  57.         self.ver.load_uri(self.uri)
  58.         self.atras.show(); self.ver.show(); self.adelante.show()
  59.         self.brecargar.show(); self.busqueda.show(); self.bfrenar.show()
  60.     self.scrolled_window.show(); self.status.show()
  61.         self.hbox.show(); self.nbox.show(); self.vbox.show()
  62.         self.ventana.add(self.hbox)
  63.         self.ventana.show()
  64.         self.ver.connect('title-changed',self.listo)
  65.         self.ver.connect('load-progress-changed',self.load)
  66.     def cargar(self,data = None):
  67.         self.uri = self.url.get_text()
  68.         if self.uri[0:7] != 'http://':
  69.             self.uri = 'http://' + self.uri
  70.         else:
  71.              self.uri = self.uri
  72.         self.ver.load_uri(self.uri)
  73.     def listo(self,view,frame,title):
  74.         self.title = frame.get_title()
  75.         self.pagina = frame.get_uri()
  76.         self.ventana.set_title('%s : %s' % (nombre,self.title))
  77.         self.url.set_text(self.pagina)
  78.     def recargar(self,widget):
  79.         self.ver.reload()
  80.     def back(self,widget):
  81.         self.ver.go_back()
  82.     def forward(self,widget):
  83.         self.ver.go_forward()
  84.     def frenar(self,widget,data = None):
  85.         self.ver.stop_loading()
  86.     def load(self,view,prog):
  87.         self.status.set_text("%s" % (prog))
  88.     def salir(self,widget,data = None):
  89.         gtk.main_quit()
  90.     def mostrar(self,data = None):
  91.         if self.n == 1:
  92.             self.url.show()
  93.             self.n = 2
  94.         else:
  95.             self.url.hide()
  96.             self.n = 1
  97.     def main(self):
  98.         gtk.main()
  99.  
  100. if __name__ == "__main__":
  101.        navegador = nav()
  102.        navegador.main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement