2009-02-19 9 views
9

Est-ce que WebKit expose une API pour travailler directement avec son DOM? Je suis à la recherche d'une classe comme HtmlElement qui peut être utilisée pour construire/traverser des arbres de contenu HTML. J'essaie d'héberger WebKit comme un contrôle de navigateur Web dans une application de bureau, et je préférerais une API directe plutôt que de passer par COM. Merci!API WebKit pour DOM

Merci!

+1

Pourquoi ne fusionnez-vous pas ceci avec l'autre thread, par exemple http://stackoverflow.com/questions/563996/gecko-api-for-dom? Changez l'en-tête, en [X API pour DOM]. – dirkgently

+0

J'ai pensé que les gens sont soit des experts sur Gecko ou WebKit –

Répondre

5

utilisant QT/WebKit (au moins la version 4.6), il est maintenant possible d'accéder au DOM du document chargé.

QtWebKit Module reference

DOM Traversal Example

+0

URL semble être 404. –

+0

J'ai mis à jour l'URL, et ajouté un lien direct vers l'exemple de code, merci. –

+0

Les liens sont morts à nouveau, désolé. Voici la version de GTK: https://webkitgtk.org/reference/webkit2gtk/stable/index.html –

3

L'URL qui suit a une réponse intéressante pour vous.

Where is WebKIT API?

+0

en prenant le code source et en le compilant, bien sûr - comment d'autre? désolé, mais c'est une question stupide, jen :) – user362834

1

vous avez un nombre limité d'options, via les différents outils d'DOM. le PyWebkitQt est vraiment un déchet; l'Objective-C n'est disponible que sur MacOSX (et est encore limité et incomplet); le COM est seulement disponible sur les fenêtres; le GObject est encore en développement même si la première version créée en 2008 était supérieure et plus complète que ce qui est actuellement dans le code source de webkit; il y a aussi des bindings C++ mais je ne les ai pas évalués. et bien sûr il y a aussi les bindings Javascript et les bindings google V8 javascript (oui ils sont séparés) mais ceux-ci sont seulement disponibles "in-browser". - comme la seule API de manipulation DOM non basée sur javascript qui vise réellement la conformité complète aux standards de facto, faisant de Python un pair de javascript en matière de manipulation DOM.