python-oxwebkit/oxwebkit/__init__.py

41 lines
1.0 KiB
Python

#!/usr/bin/python
# -*- coding: utf-8 -*-
# vi:si:et:sw=4:sts=4:ts=4
import sys, thread
import gtk
import webkit
class WebView(webkit.WebView):
def get_html(self):
self.execute_script('oldtitle=document.title;document.title=document.documentElement.innerHTML;')
html = self.get_main_frame().get_title()
self.execute_script('document.title=oldtitle;')
return html
class Browser(gtk.Window):
def __init__(self):
gtk.gdk.threads_init()
gtk.Window.__init__(self)
self.view = WebView()
self.view.connect('load-finished', self._finished_loading)
self.add(self.view)
def open(self, url, cb=None):
self.view.open(url)
self.cb = cb
def crawl(self):
view = WebView()
view.open(self._url)
view.connect('load-finished', self._finished_loading)
gtk.main()
def _finished_loading(self, view, frame):
if self.cb:
self.cb(self, view, frame)
def quit(self):
gtk.main_quit()