Page 1 of 1

kann die Webseite nicht komplett herunterladen

Posted: 31 Jan 2024, 07:03
by effel
Hallo,

ich versuche mit allen mir bekannten Möglichkeiten die ich von AHK kenne diese Seite zu laden:

https://www.vrs.de/am/s/8d6f16360061f7360b9d32257184a917

Der begehrte Teil fehlt jedoch. Im Chrome kann ich die gesuchten Zeilen finden.

Ich möchte nur die erste Abfahrtzeile auslesen. Kann mir jemand zeigen ob und wie das geht?

Code: Select all

url = https://www.vrs.de/am/s/8d6f16360061f7360b9d32257184a917

;urldownloadtofile,% url, urldownloadtofile.html
;clipboard := UrlDownloadToVar#1(url)
;clipboard := UrlDownloadToVar#2(url)
;clipboard := UrlDownloadToVar#3(url)
;clipboard := webGet(url)

webGet(url) {
 whr := ComObjCreate("WinHttp.WinHttpRequest.5.1"), whr.Open("GET", url), whr.Send()
 Return whr.ResponseText
}
;##
UrlDownloadToVar#1(url) {
	req := ComObjCreate("Msxml2.XMLHTTP")
	req.open("GET", url, False)
	req.Send()
	Return req.responseText
	}
;##
UrlDownloadToVar#2(url) {
oHTTP := ComObjCreate("MSXML2.XMLHTTP.6.0")
Loop {
	Try {
   oHTTP.open("GET", url, false)
   oHTTP.send()
   status := oHTTP.status
   if (status != 200)
   nochmal := 1
	}
	catch e {
		Tooltip Fehler
	}
   } until !nochmal
   Return oHTTP.responseText
}
;##
UrlDownloadToVar#3(url) {
whr:= ComObjCreate("WinHttp.WinHttpRequest.5.1")
ComObjError(false)
whr.Silent := True    ;- script failure = off
whr.SetTimeouts(500,500,500,500)
whr.Open("GET", url,false)
whr.Send()
whr.WaitForResponse(120)
;H := whr.ResponseText
   Return whr.ResponseText
}
; ##

<tr><td class="col-minutesToDeparture"><span class="minutes">3:09 h</span></td><td class="col-line"><img src="/typo3conf/ext/vrs_info/Resources/Public/Images/Transport/Bus.svg" width="26px" height="26px" alt="{f:translate(key:'product.Bus')}" style="max-height: 20px;">127</td><td class="col-direction">Longericher Str.</td></tr>


01_31_24 @10_07_40.PNG
01_31_24 @10_07_40.PNG (144.99 KiB) Viewed 545 times

Re: kann die Webseite nicht komplett herunterladen

Posted: 31 Jan 2024, 09:07
by just me
Moin @effel,

ich habe von den Hintergründen des WWW-Geraffels leider immer noch keine Ahnung. Eines ist mir aber aufgefallen:

Code: Select all

	<noscript>
		<div class="warning-box mb-3">
			<i class="fa fa-exclamation-triangle"></i> JavaScript ist deaktiviert oder in Ihrem Browser nicht verfügbar. Aktivieren Sie es oder benutzen Sie einen aktuellen Browser, um den Abfahrtsmonitor zu verwenden.
		</div>
	</noscript>
Das sieht für mich so aus, als ob JavaScript auf der Clientseite ausgeführt werden soll. Dafür benötigt man normalerweise einen Browser.
Es kann aber auch alles ganz anders sein.

Re: kann die Webseite nicht komplett herunterladen  Topic is solved

Posted: 01 Feb 2024, 16:35
by gero
Hallo effel
... falls du auf deinem System den IE noch zum laufen bekommst (gibt etliche Tools), dann sollte es doch so etwa gehen:

gruss
gero

Code ist AHK V1

Code: Select all

#NoEnv
#SingleInstance force
SetBatchLines -1
URL:="https://www.vrs.de/am/s/8d6f16360061f7360b9d32257184a917"
IE:= ComObjCreate("InternetExplorer.Application")
IE.Visible := false ; true
IE.Navigate(URL)
while (IE.busy)
	sleep 1000
sleep 1000
Gui,Font,s12
Gui,Add,TEXT,x10 y10 w250 center,Abfahrtzeiten: Longericher Str.
Gui,Add,TEXT,x10 y+10 w240 vAZ r10 right,
Gui,Add,TEXT,x10 y+10 w250 vUZ center,
Gui,show
Loop
	{
	document:= IE.Document
	range := document.body.createTextRange()
	Loop,parse,% range.Text,`n,`r
		{
		Ifinstring,A_loopField,Longericher
		STRING.=A_LoopField . "`n"
		}
	StringReplace,STRING,STRING,127,%A_Space%(B 127)%A_Space%,all
	GuiControl,,AZ,% STRING
	GuiControl,,UZ,%A_Hour%:%A_Min%:%A_Sec%
	STRING:=""
	sleep 5000
	}
return

ESC::
GuiClose:
IE.quit()
exitapp

Re: kann die Webseite nicht komplett herunterladen

Posted: 04 Feb 2024, 11:39
by effel
hallo @gero vielen Dank ich musste ein paar Einstellungen beim Edge vornehmen dann funktionierte es auf Anhieb