Seite 1 von 1

XbpHtmlViewer Automation

Verfasst: So, 28. Sep 2014 22:03
von Werner_Bayern
Servus,

ich würde gerne eine Website laden und dann gleich ein paar Eingaben vornehmen.

Z. B. eine Website laden, einen Button drücken und in die dann erscheinende Eingabemaske Daten eingeben und den Default-Button betätigen.

Hat da jemand eine Ahnung?

Re: XbpHtmlViewer Automation

Verfasst: Mo, 29. Sep 2014 9:30
von brandelh
Meinst du damit, dass du eine BESTEHENDE Website FERNSTEUERN möchtest ?

Mit LoadFromUrl() kannst du eine Seite in eine Variable einlesen.
Danach musst du die INPUT Variablen und die FORM finden.
Bei der ASINET gibt es die Funktion GetCgiString() um die Variablen zu trennen,
wobei dein Formular aktuell ja leer ist.

Ein CGI-String den man LoadFromUrl() als Antwort übergibt sieht so aus:

Feldname1=Inhalt1&Feldname2=Inhalt2

Somit wird klar, dass = und & sowie einige andere als Sonderzeichen nicht selbst im Text vorkommen dürfen.
Diese werden dann als HEX Wert hinterlegt. Ich meine ich hätte Beispiele dazu in der Wissensbasis mit einer Anpassung von Phils LoadFromUrl() hinterlegt.

Oder habe ich dich falsch verstanden ?

Re: XbpHtmlViewer Automation

Verfasst: Mo, 29. Sep 2014 13:11
von Werner_Bayern
Bin momentan soweit:

Code: Alles auswählen

if (oHtml := XbpHtmlViewer():new(drawingArea)) == NIL
   fehler("WEB-Seite kann nicht angezeigt werden, Internet-Explorer muss installiert sein!")
   oFenster:destroy()
   return NIL
endif
oHtml:create(,, {0, 0}, aSize)
oHtml:progressChange := {|nProgress, nProgressMax, self| oStatus:setCaption(ltrim(str(Int( (nProgress * 100) /;
nProgressMax), 100 )) + " % geladen"), sleep(5)}
oHtml:navigate(cUrl)
Das Problem: isBusy, xbeHTML_ProgressChange , xbeHTML_DocumentComplete und xbeHTML_NavigateComplete geben an, dass er fertig sei, ist er aber überhaupt noch nicht, da wird noch ein Java-Code geladen.

Den Rest hätte ich jetzt über sendkey gelöst, ist aber alles andere als universell und elegant.

Ja, ich möchte damit z. B. den login hier im Formum automatisieren.

Re: XbpHtmlViewer Automation

Verfasst: Mo, 29. Sep 2014 14:04
von brandelh
Werner_Bayern hat geschrieben:Ja, ich möchte damit z. B. den login hier im Formum automatisieren.
ob uns das Recht ist ... :?

Bei mir macht das die Kennwortverwaltung von IE oder Firefox :D

Re: XbpHtmlViewer Automation

Verfasst: Di, 30. Sep 2014 8:13
von Werner_Bayern
LoadFromUrl() wäre wohl nicht das richtige, ich möchte die jew. Website ja etwas "Fernsteuern".

Hat das noch keiner gemacht?

Re: XbpHtmlViewer Automation

Verfasst: Di, 30. Sep 2014 11:52
von Werner_Bayern
Hab gerade bemerkt, dass Xbase++ 1.9 355 die Seiten nicht richtig darstellt und dann auch script-Fehler kommen. :(

Re: XbpHtmlViewer Automation

Verfasst: Mi, 01. Okt 2014 1:04
von AUGE_OHR
hi,

der XbpHtmlViewer ist IMHO nur ein "Render" welcher HTML darstellen kann ... wie CXP / HtmlLayout.
ich denke nicht das du damit was "senden" kannst ... vielmehr kannst du dir einen HTML Editor damit bauen.
HTML_Editor.JPG
HTML_Editor.JPG (143.28 KiB) 9001 mal betrachtet

Re: XbpHtmlViewer Automation

Verfasst: Mi, 01. Okt 2014 11:40
von Werner_Bayern
Gibts eine andere Möglichkeit? Oder doch nur IE starten, warten und dann sendkey?