Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Auf HTML Seite Feld ausfüllen (https://www.delphipraxis.net/216046-auf-html-seite-feld-ausfuellen.html)

DelTurbo 19. Okt 2024 12:11

AW: Auf HTML Seite Feld ausfüllen
 
Nein, dann geht gar nichts mehr.

Olli73 19. Okt 2024 12:11

AW: Auf HTML Seite Feld ausfüllen
 
hast du meine editierte Version verwendet?

DelTurbo 19. Okt 2024 12:14

AW: Auf HTML Seite Feld ausfüllen
 
Jop, per Copy & Paste... das hier.

Delphi-Quellcode:
    WVBrowser.ExecuteScript('var inputField = document.querySelector(''input[placeholder="Wonach suchen Sie? (Tipp: Suche mit englischen Begriffen)"]'');');
    WVBrowser.ExecuteScript('inputField.value = ''Sony'';');
    WVBrowser.ExecuteScript('var inputField = document.querySelector(''input[value="Sony"]'');');
    WVBrowser.ExecuteScript('var button = inputField.parentElement.querySelector(''button'');');
    WVBrowser.ExecuteScript('button.click();');

EDIT:
Code:
Wonach suchen Sie? (Tipp:
Da gehören 2 Spaces rein. Nach dem ?. Das habe ich gemacht dann trägt er wieder was ein. Aber es läuft genauso vorher.

DelTurbo 19. Okt 2024 14:35

AW: Auf HTML Seite Feld ausfüllen
 
Ich habe noch getestet und dabei ist mir aufgefallen das er meint, in input würde nichts drinstehen.

Das heißt natürlich um Umkehrschluss das das button.click klappt. Er nimmt es halt nicht weil seiner Meinung nach nichts eingetragen wurde.

Vielleicht fällt noch jemanden etwas ein...

Olli73 20. Okt 2024 10:53

AW: Auf HTML Seite Feld ausfüllen
 
Vielleicht hilft es ja zwischen dem Setzen des Values und dem ButtonClick ein ProcessMessages und/oder Sleep einzubauen!?

DelTurbo 20. Okt 2024 11:02

AW: Auf HTML Seite Feld ausfüllen
 
Das habe ich schon alles versucht. Auch button.click("Sony");. Ich bin auf die blödesten Sachen gekommen.

Ich habe auch mal FireFox installiert um mal das inputfeld zu unter suchen. Da habe ich festgestellt das 4 js Routinen aufgerufen werden. Die kann man beim FF einzeln abschalten. Da gibt es eine keypress. Die muss als einziges an bleiben, dann merkt er das man etwas ins Feld eingetragen hat (natürlich von Hand).

Aber wenn ich input.keypress("S"); aufrufe meint er immer noch das nichts eingegeben wurde.

Trotzdem danke

Olli73 20. Okt 2024 11:27

AW: Auf HTML Seite Feld ausfüllen
 
Und sowas?

Code:
  WVBrowser.ExecuteScript('inputField.dispatchEvent(new KeyboardEvent("keypress", {"key": "a"}));');

DelTurbo 20. Okt 2024 11:40

AW: Auf HTML Seite Feld ausfüllen
 
Nein, auch nix. Ich glaube wir vergessen es. Folgenden Code habe ich genutzt.

Delphi-Quellcode:
    WVBrowser.ExecuteScript('var inputField = document.querySelector(''input[placeholder="Wonach suchen Sie?  (Tipp: Suche mit englischen Begriffen)"]'');');
    WVBrowser.ExecuteScript('var button = inputField.parentElement.querySelector(''button'');');
    WVBrowser.ExecuteScript('inputField.dispatchEvent(new KeyboardEvent("keypress", {"key": "a"}));');
    Sleep(1000);
    Writeln(WVBrowser.ExecuteScript('button.click();'));
Ich danke dir für deine Hilfe.


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:39 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz