Guten Tag,
wie kann ich mit AHK feststellen, ob eine Website vollständig geladen hat.
Also AHK soll, solange warten bis die Seite vollständig geladen hat. Die Seite braucht manchmal 3sek. aber auch manchmal 7sek ...
Gibt es da eine Möglichkeit, um festzustellen, ob die Seite vollständig aufgeladen hat.
vielen danke im Voraus
LG
Das vollständige Laden einer Website ermitteln. Topic is solved
Moderator: jNizM
Re: Das vollständige Laden einer Website ermitteln. Topic is solved
Ich würde nach dem Seite nachladen Icon suchen (ImageSearch) und einfach warten bis es auftauch ->
BeispielCode:
BeispielCode:
Code: Select all
~F5::
ImageSearch, x, y, 0, 0, %A_ScreenWidth%, %A_ScreenHeight%, reload_ico.png
while(ErrorLevel)
{
ImageSearch, x, y, 0, 0, %A_ScreenWidth%, %A_ScreenHeight%, reload_ico.png
}
ErrorLevel := 0
MsgBox, Seite geladen
return
Re: Das vollständige Laden einer Website ermitteln.
@Qysh Dankeschön, funktioniert bestens.
Re: Das vollständige Laden einer Website ermitteln.
noch ein Beispiel mit imagesearch :
Code: Select all
;- AHK FireFox
;- 1- Speichere zuerst das Bild von Firefox
; Kreis mit Pfeil , oben links wenn Url-Load beendet
;----------------------------------------------------------------------------------------
#warn
#Singleinstance,force
Settitlematchmode,2
Coordmode,pixel
ur:="https://autohotkey.com/boards/"
;IE:=A_programfiles . "\Mozilla Firefox\firefox.exe "
IE:="" ;- default browser
f1=%a_scriptdir%\Reload_Ico.png
SplitPath,f1, name, dir, ext, name_no_ext, drive
wa:=A_screenwidth
ha:=A_screenHeight
;- define a place to search or whole screen
x1 :=(wa*1)/100
y1 :=(ha*1)/100
x2 :=(wa*20)/100
y2 :=(ha*20)/100
Run,%IE%%UR%,,max
sleep,2000
settimer,aaa,1000
return
aaa:
ImageSearch,xf,yf,%x1%,%y1%,%x2%,%y2%, *70 %f1%
if ErrorLevel = 0 ;- Image found
{
SetTimer,AAA,OFF
msgbox, 262208,FOUND,Picture found=`n%name%`nX=%xf% Y=%yf% `nDONE,5
exitapp
}
return
esc::exitapp
;==================================================
-
- Posts: 5
- Joined: 13 Jun 2018, 07:13
Re: Das vollständige Laden einer Website ermitteln.
Hi,
ich würde den Thread gerne hijacken oder ist das in dem Forum nicht gerne gesehen?
Ich arbeit mich gerade in AHK ein und bin fasziniert ... allerdings habe ich keinen IT Background.
Bzgl ImageSearch habe ich folgende Frage:
Kann ich auch nach Ankerelementen (html) suchen?
Es geht konkret darum, dass auf einer Seite entweder das (im Nichtsichtbarenbereich) Ankerelement 1 <a> oder eben span angezeigt wird wenn das der Fall ist soll ein anderes Ankerelement 2 <a> oder eben span lokalisiert werden und der Mauszeiger auf das Ankerelement palziert werden.
Wenn das Ankerlement 1 nicht vorhanden ist dann soll die nächste Seite aufgerufen werden ... allerdings würde ich hier mit einer einfach x,y Koordinate arbeiten
Hab ich mich verständlich ausgedrückt?
Danke schon im voraus
Dominik
ich würde den Thread gerne hijacken oder ist das in dem Forum nicht gerne gesehen?
Ich arbeit mich gerade in AHK ein und bin fasziniert ... allerdings habe ich keinen IT Background.
Bzgl ImageSearch habe ich folgende Frage:
Kann ich auch nach Ankerelementen (html) suchen?
Es geht konkret darum, dass auf einer Seite entweder das (im Nichtsichtbarenbereich) Ankerelement 1 <a> oder eben span angezeigt wird wenn das der Fall ist soll ein anderes Ankerelement 2 <a> oder eben span lokalisiert werden und der Mauszeiger auf das Ankerelement palziert werden.
Wenn das Ankerlement 1 nicht vorhanden ist dann soll die nächste Seite aufgerufen werden ... allerdings würde ich hier mit einer einfach x,y Koordinate arbeiten
Hab ich mich verständlich ausgedrückt?
Danke schon im voraus
Dominik
Re: Das vollständige Laden einer Website ermitteln.
Bei mir funktioniert es leider nicht.
Ich bin nicht unbedarft, denn ich habe etliche Jahre als Programmierer gearbeitet (bin jetzt schon in Rente), ich irgendwie ist der Wurm drinnen und ich finde den Fehler nicht.
Hier mein Code:
Was mir aufgefallen ist, dass ich das das reload_ico.png nirgendwo auf dem Laufwerk, wo die Browser installiert sind, finden kann. Möglicherweise ist das das Problem. Und es funktioniert bei beiden Browsern nicht.
Kann mir bitte jemand helfen?
Danke im Voraus
Ich bin nicht unbedarft, denn ich habe etliche Jahre als Programmierer gearbeitet (bin jetzt schon in Rente), ich irgendwie ist der Wurm drinnen und ich finde den Fehler nicht.
Hier mein Code:
Code: Select all
; Testen, ob Webseite vollständig geladen
; Strg - Alt - Shift - F9
^!+F9::
Run C:\Program Files (x86)\Mozilla Firefox\firefox.exe http://192.168.0.101/#!/control
;Run C:\Program Files (x86)\Google\Chrome\Application\chrome.exe http://192.168.0.101/#!/control
ImageSearch, x, y, 0, 0, %A_ScreenWidth%, %A_ScreenHeight%, reload_ico.png
while(ErrorLevel)
{
ImageSearch, x, y, 0, 0, %A_ScreenWidth%, %A_ScreenHeight%, reload_ico.png
}
ErrorLevel := 0
MsgBox, Seite geladen
Return
Kann mir bitte jemand helfen?
Danke im Voraus
Re: Das vollständige Laden einer Website ermitteln.
Hi,
Hierbei handelt es sich um eine einfache Bildersuche. Das bedeutet, dass du einen Screenshot von deinem Bildschirm machst und den Ausschnitt mit dem "Reload-Symbol" ausschneidest. Der Ausschnitt wird im selben Ordner wie das Skript gespeichert und erhält den Namen "reload_ico.png"
Das Skript sucht nur nach diesem Ausschnitt, und wenn es ihn findet, bedeutet das, dass die Seite geladen ist. Diese Methode ist nicht zuverlässig.
UIA, Chrome.ahk oder Rufaydium bieten zuverlässigere Methoden an.
Was mir aufgefallen ist, dass ich das das reload_ico.png nirgendwo auf dem Laufwerk, wo die Browser installiert sind, finden kann. Möglicherweise ist das das Problem. Und es funktioniert bei beiden Browsern nicht.
Hierbei handelt es sich um eine einfache Bildersuche. Das bedeutet, dass du einen Screenshot von deinem Bildschirm machst und den Ausschnitt mit dem "Reload-Symbol" ausschneidest. Der Ausschnitt wird im selben Ordner wie das Skript gespeichert und erhält den Namen "reload_ico.png"
Das Skript sucht nur nach diesem Ausschnitt, und wenn es ihn findet, bedeutet das, dass die Seite geladen ist. Diese Methode ist nicht zuverlässig.
UIA, Chrome.ahk oder Rufaydium bieten zuverlässigere Methoden an.
Re: Das vollständige Laden einer Website ermitteln.
Oha, da habe ich was falsch verstanden oder nicht richtig gelesen.
Danke schön.
Ich werde mal UIA, Chrome.ahk und Rufaydium suchen und alle ausprobieren.
Sollte ich dann noch Probleme haben, melde ich mich nochmals.
Danke schön.
Ich werde mal UIA, Chrome.ahk und Rufaydium suchen und alle ausprobieren.
Sollte ich dann noch Probleme haben, melde ich mich nochmals.
Re: Das vollständige Laden einer Website ermitteln.
ImageSearch, x, y, 0, 0, %A_ScreenWidth%, %A_ScreenHeight%, reload_ico.png funktioniert bei meinem Firefox-Browser nicht. Der Icon wird nicht gefunden. ErrorLevel ist 1.
Re: Das vollständige Laden einer Website ermitteln.
die screenschots der Vergleichsbilder sollten immer als BMP gespeichert werden, da PNG und JPG komprimiert sind. Bei kleinen Bildern ist der Unterschied durch die Artefakte zu groß. Dazu kommt noch einen eventuellen Zoom in Browser, der den Vergleich zunichte macht.
Man kann aber mit dem *nnn - Wert spielen, siehe Hilfe...
Man kann aber mit dem *nnn - Wert spielen, siehe Hilfe...
Code: Select all
ImageSearch, x, y, 0, 0, %A_ScreenWidth%, %A_ScreenHeight%, *100 reload_ico.png
Re: Das vollständige Laden einer Website ermitteln.
Das png-Dateiformat ist tatsächlich verlustfrei, genauso wie bmp, lediglich die Daten sind komprimiert gespeichert. Ich würde lediglich von verlustbehafteten Formaten wie jpg abraten. Verschiedene Größen/Zoomlevel sind dagegen garantiert ein Problem.
Who is online
Users browsing this forum: No registered users and 7 guests