AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein TEdgeBrowser - Möglichkeit, das inspect window per code zu steuern?
Thema durchsuchen
Ansicht
Themen-Optionen

TEdgeBrowser - Möglichkeit, das inspect window per code zu steuern?

Ein Thema von softtouch · begonnen am 28. Feb 2024 · letzter Beitrag vom 24. Mär 2024
Antwort Antwort
Benutzerbild von softtouch
softtouch

Registriert seit: 13. Feb 2015
Ort: Kerpen
235 Beiträge
 
Delphi 12 Athens
 
#1

TEdgeBrowser - Möglichkeit, das inspect window per code zu steuern?

  Alt 28. Feb 2024, 09:46
Gibt es eine Möglichkeit, das inspect window (rechts auf ein Element klicken, dann "inspect" auswählen) per code zu steuern?

Es geht mir darum, den XPath eines Elements zu bekommen, ohne die right-click -> inspect -> right-click -> copy -> XPath Geschichte vom Enduser machen zu lassen, da es für einige Enduser unverständlich ist.
Ich kann ja einfach einen normalen Klick auf ein Element abfangen, und kann auch das inspect window öffnen, kein Problem, aber ich habe bisher keine Möglichkeit gefunden, die obigen steps per code auszuführen, sodass also ein normaler Klick auf ein Element den XPath zurückgibt.
Geht das überhaupt oder denke ich da zu weit? Oder gibt es vielleicht sogar eine andere Möglichkeit, den XPath zu bekommen?
  Mit Zitat antworten Zitat
Benutzerbild von paule32.jk
paule32.jk

Registriert seit: 24. Sep 2022
Ort: Planet Erde
356 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: TEdgeBrowser - Möglichkeit, das inspect window per code zu steuern?

  Alt 22. Mär 2024, 17:30
für Mozilla FireFox und Thunderbird gibt es quell-offenen Source-Code.
Damit kannst Du das Verhalten eines Browsers studieren.

Allerdings ist der Bootstrap ein klein wenig tricky.

Ansonsten könntest Du Dir mal Electron anschauen.
Das ist auch ein WebBrowser, der per JavaScript so manche Dinge machen kann,
was ein normaler Browser nicht kann.

Der liegt zwar nicht direkt offen als QuellCode bei und ist ein wenig overblowed.
Es gibt verschiedene Clones/Forks von diesen - such doch mal auf github.com danach.

Wenn mich nicht alles täuscht wurde damit das Microsoft Visual Code IDE entwichelt und
programmiert (mal im Kaffee-Sats zu stöchern).
Frag doch einfach
Alles was nicht programmiert werden kann, wird gelötet
  Mit Zitat antworten Zitat
Benutzerbild von gubbe
gubbe

Registriert seit: 8. Okt 2005
Ort: Schleswig-Holstein
126 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: TEdgeBrowser - Möglichkeit, das inspect window per code zu steuern?

  Alt 24. Mär 2024, 11:24
Ich kenne keinen direkten Weg, diese Funktion aufzurufen.

Du könntest das Devtools-Protocol ansprechen, aber leider ist die Funktion nicht im Protokoll, sondern im Frontend der Devtools umgesetzt.

Der Quellcode der Funktion ist hier zu finden:

https://github.com/chromium/chromium...OMPath.js#L242

Du könntest versuchen, es ganz ohne die Devtools zu lösen und das Script nach dem Laden der Seite auszuführen. Auf den ersten Blick muß oben noch ein "Elements = {}" ergänzt werden, damit es keine Fehler gibt.
Mit einem weiteren Script, könnte der Klick auf ein beliebiges HTML-Element abgefangen werden, um dann mit diesem als Parameter die Funktion "Elements.DOMPath.xPath" aufzurufen. Das Ergebnis muss dann natürlich noch an Delphi übermittelt werden.

Eine fertige Lösung habe ich hier nicht, aber das wäre mein erster Ansatz.

Ansonsten hätte ich noch den Tip, es mit Playwright zu probieren. Das ist eine Library von Microsoft für Browsertests. Dort ist diese Funktion soweit ich weiß eingebaut oder zumindest als Erweiterung verfügbar. Je nachdem, was Du vorhast, ist das vielleicht auch ein geeignetes Tool für die Gesamtaufgabe.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:32 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz