Ich habe meine Ansicht erstellt (in einem Fenster eingewickelt) und eine URL wie folgt geladen:Wie behandelt man Klicks auf Links in Python mit Gtk 3.0 und WebKit2 4.0?
self.web_view = WebKit2.WebView()
self.web_view.load_uri("https://en.wikipedia.org")
Mein „Mini-Browser“ startet und ich kann auf lokale Links (Links klicken, die JavaScript-Ereignisse gebunden sind, oder Links zu anderen Seiten derselben Domain). Aber wenn die Links auf andere Domains zeigen, passiert nichts. Wie finde ich Klicks auf externe Links? Oder wie kann ich diese Links im Standardbrowser des Systems öffnen?
UPDATE: Cross-Site-Links werden nicht vom "Mini-Browser" verarbeitet. Kann ich einen Ereignis-Hook (onclick) schreiben, um den "Mini-Browser" zu unterbrechen und basierend auf einer benutzerdefinierten Logik zu handeln oder gibt es eine Möglichkeit, Cross-Site-Links zu konfigurieren.
Sie verwenden das Standard-Webkit? Es gibt ein Python-basiertes Webkit für gtk: [pywebkitgtk] (https://code.google.com/archive/p/pywebkitgtk), möglicherweise funktioniert es besser als das Standard-Python-webkit2. [Hier] (https://stackoverflow.com/questions/647041/need-a-simple-hello-world-example-using-the-webkit-library-in-python) ist ein Anwendungsbeispiel – Alex
Hier ein [Beispiel von einem Python-Browser] (https://gist.github.com/kklimonda/890640#file-pybrowser-py), die gtk und webkit verwendet, habe ich nur einen Versuch unternommen, "https: // en.wikipedia.org" ist für mich arbeiten. Grundsätzlich werden die gleichen Anrufe wie du benutzt .. du erben auch von 'Gtk.VBox'? – Alex
@Alex Das Beispiel basiert auf der alten Version von gtk und webkit :-( – Witek