WWWReader

Hallo,

mit welcher Funktion kann ich im WWWReader einen Link setzen?

Ich kann in der Doku nichts finden.:mad:
Früher ging mal: WWWReader_RetrievePage
Strg-Leer spukt nur WWWReader_UpdatePage aus

Ist ersetzt worden durch

Sys_GetURLContent($URL);

sollte aber noch funktionieren. Ist in der Datei __compatibility.inc.php noch drin.
Besser jetzt umsteigen auf die neue Funktion.

if (!function_exists('WWWReader_RetrievePage'))
{
	function WWWReader_RetrievePage($InstanceID, $URL)
 	{
		return Sys_GetURLContent($URL);
	}
}

Ähm,

mit dem kann ich den Inhalt einer Seite auslesen aber nicht mein WWWReader füttern!

Ich möchte die Url im WWWReader setzen und mit den TextParser den Inhalt zuschneiden.
Steh ich da auf den Schlauch?

Dann musst du es so machen

	$id = 12345; // WWWReader
	
	IPS_SetProperty($id, 'URL', "http://192.168.0.1");
   IPS_ApplyChanges($id);

So funktionierts:)
Vielen Dank.

Wo sind eigentlich die Methoden WWWReader_SetPage, WWWReader_RetrievePage und WWWReader_UpdatePage in der Dokumentation beschrieben. Ich finde die aktuell nicht bzw. auch nicht das Modul HTTP Client in der Referenz. Habe ich Tomaten auf den Augen oder fehlt das tatsächlich? :wink:

Die Funktionen gibt es halt nicht mehr, sind schon lange angekündigt.

Der HTTP Client ist unter IO zu finden:

Und dessen neue Update Funktion nennt sich WWW_UpdatePage.
Michael

1 „Gefällt mir“

Danke Michael für die schnelle Rückmeldung. Kann ich dann die URL nicht mehr programmatisch (also dynamisch) ändern?

Für den HTTP Client?
Klar geht das, steht fast genau vor deiner ersten Frage… Beitrag #4

Wobei ich fast nur noch Sys_GetURLContent benutze und die Daten im Script verarbeite.

Michael

Nochmals vielen Dank. Das ist in Kombination mit einem PHP Script ist tatsächlicher viel effektiver als der TextParser.

Ich habe das jetzt komplett umgestellt. Allerdings haben sich die Web-Seiten auch weiterentwickelt :wink: und auf einer werden die für mich relevanten Daten wohl asynchron im Hintergrund geladen. Komme ich da auch irgendwie ran?

Webseite im Browser mit vorher geöffneter Entwicklerkonsole (F12) öffnen. Oft sieht man dann die Anfrage an den eigentlichen API Endpunkt. Manchmal kann man auch selbst direkt dahin anfragen.

Cool. Vielen Dank! Ganz schon komplex die Web-Seite https://www.eurex.com/ex-en/markets/equ/equ-opt/options/Allianz-951472. Ich habe ein JSON Objekt mit einigen Daten gefunden https://www.eurex.com/api/v1/overallstatistics/47910?busdate=20240517&filtertype=overview. Leider aber nicht die eigentlichen Prices/Quotes, an die ich ran will… :frowning:
Hat allerdings auch nicht so viel im IPS zu tun, aber vielleicht hat jemand einen Tipp? Irgendwie scheint mir das so, dass da noch zusätzliche DB Abfragen „versteckt“ sind?