Seite 1 von 1

webkit wieder "Segmentation fault"

Verfasst: Montag 20. April 2009, 17:34
von Andyh
Hallo

Ich weis nicht, alles was ich zurzeit anfasse macht "Segmentation fault"

Ich habe versucht den webkitgtk zu benutzten, dazu habe ich das hier genommen:

Code: Alles auswählen

import gtk 
import webkit 

view = webkit.WebView() 

sw = gtk.ScrolledWindow() 
sw.add(view) 

win = gtk.Window(gtk.WINDOW_TOPLEVEL) 
win.add(sw) 
win.show_all() 

view.open("http://myvideo.de") 
gtk.main()
Internetseiten wie google gehen ohne probleme, wenn diese aber aufwendiger sind wie "myvideo.de" oder "youtube.de" dann geht meist nichts oder nicht lange.

Die Meldung im Terminal bei "myvideo.de" un "youtube.de":

** Message: NP_Initialize
** Message: NP_Initialize succeeded
** Message: NP_Initialize
** Message: NP_Initialize succeeded
** Message: NP_Initialize
** Message: NP_Initialize succeeded
** Message: NP_Initialize
** Message: NP_Initialize succeeded
Segmentation fault

Weis da einer von euch weiter?

Gruß
Andyh

Verfasst: Dienstag 21. April 2009, 13:28
von jerch
Da liegt wohl was mit dem Initialisieren von NS-Plugins im Argen (Flash etc).
Im Webkit von Qt 4.5 klappt das jetzt, vllt. hilft Dir eine neuere Version von Webkit.

Btw, was ist "import webkit" eigentlich? Ein Python-binding für WebKit?

Verfasst: Dienstag 21. April 2009, 14:48
von Leonidas
jerch hat geschrieben:Btw, was ist "import webkit" eigentlich? Ein Python-binding für WebKit?
Das Webkit/GTK-Python-Binding.

Verfasst: Freitag 31. Juli 2009, 08:30
von Andyh
Hallo

Die Webkit/GTK-Python-Binding kann jetzt mit flash umgehen.

Auf der Seite bekommt man seine Paketquellen von 8.04 bis 9.10:
https://launchpad.net/~webkit-team/+archive/ppa

Gruß
Andyh

Verfasst: Mittwoch 2. Dezember 2009, 09:59
von Andyh
Hallo

Habe gerade noch was herausgefunden:

Code: Alles auswählen

gtk.gdk.threads_init()  
Darf man nicht benutzen, sonst friert das ganze Programm ein wenn man auf einer Internetseite mit Flash ist.

Dafür muss man das:

Code: Alles auswählen

gobject.threads_init()
benützen

Gruß
Andyh[/code]