2

Webkit から WebKit2 に切り替えたい小さな Python3 プログラムを使用しています。つまり、Gtk ウィンドウで Web サイトを開き、html コードを変数に格納したいと考えています。WebKit の場合は簡単です:

import sys
import gi
gi.require_version('WebKit', '3.0') 
from gi.repository import WebKit
from gi.repository import Gtk, Gdk

starturl = 'https://www.google.de'

def printHTML(webview, frame):
    html = frame.get_data_source().get_data().str
    print(html)

webview = WebKit.WebView()
webview.open(starturl)
webview.connect("load-finished", printHTML)

win = Gtk.Window()
win.add(webview)
win.connect("delete-event", Gtk.main_quit)
win.set_default_size(800,600)
win.show_all()

Gtk.main()

WebKit2 を使用すると、次を除いてすべて問題ありません: HTML コードを取得できません...

import sys
import gi
gi.require_version('WebKit2', '4.0') 
from gi.repository import WebKit2
from gi.repository import Gtk, Gdk

starturl = 'https://www.google.de'

def printHTML(webview, event):
    html = ???
    print(html)

webview = WebKit.WebView()
webview.load_uri(starturl)
webview.connect("load-changed", printHTML)

win = Gtk.Window()
win.add(webview)
win.connect("delete-event", Gtk.main_quit)
win.set_default_size(800,600)
win.show_all()

Gtk.main()

WebKit2 の「フレーム」に相当するものはありますか? 誰かが解決策を知っているかもしれません。

よろしくお願いします。まで

4

1 に答える 1