Mostrando entradas con la etiqueta browser. Mostrar todas las entradas
Mostrando entradas con la etiqueta browser. Mostrar todas las entradas

viernes, 11 de junio de 2010

Navegador para linux en 2Kb

Hace tiempo quería compartir con vosotros este pequeño codigo. Es un navegador en python que pesa menos de 2 kb. Así que aquí os dejo el código.


#!/usr/bin/env python
import sys
import gtk
import webkit
DEFAULT_URL = 'http://www.google.com' # Change this as you Wish
class SimpleBrowser: # needs GTK, Python, Webkit-GTK
    def __init__(self):
        self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
        self.window.set_position(gtk.WIN_POS_CENTER_ALWAYS)
        self.window.connect('delete_event', self.close_application)
        self.window.set_default_size(350, 20)
        vbox = gtk.VBox(spacing=5)
        vbox.set_border_width(5)
        self.txt_url = gtk.Entry()
        self.txt_url.connect('activate', self._txt_url_activate)
        self.scrolled_window = gtk.ScrolledWindow()
        self.webview = webkit.WebView()
        self.scrolled_window.add(self.webview)
        vbox.pack_start(self.scrolled_window, fill=True, expand=True)
        self.window.add(vbox)
    def _txt_url_activate(self, entry):
        self._load(entry.get_text())
    def _load(self, url):
        self.webview.open(url)
    def open(self, url):
        self.txt_url.set_text(url)
        self.window.set_title('%s' % url)
        self._load(url)
    def show(self):
        self.window.show_all()
    def close_application(self, widget, event, data=None):
        gtk.main_quit()
if __name__ == '__main__':
    if len(sys.argv) > 1:
        url = sys.argv[1]
    else:
        url = DEFAULT_URL
    gtk.gdk.threads_init()
    browser = SimpleBrowser()
    browser.open(url)
    browser.show()
    gtk.main()

Para hacerlo funcionar guardarlo por ejemplo como:

navegador.py

le dais permisos de ejecución:

$ chmod +x mavegador.py

y lo podeis ejecutar:

$ python navegador.py

ó

$ python navegador.py http://ubuntu-paranovatos.blogspot.com/

O cualquier otra URL.

Ya veis en que poco espacio se puede tener un navegador. Aunque no lo useis seguro que es un buen ejemplo para aprendices de Python


Visto en | Motho ke motho ka botho