PhantomJS Skript funktioniert nicht
Verfasst: Mittwoch 26. August 2020, 00:27
Hallo,
seit Stunden der Suche und mit wachsender Verzweiflung bin ich am Ende:
Ich versuche auf einem Raspberry das folgende Skript zum Laufen zu bringen, aber ich kapiere einfach nicht die Syntax.
Zugegeben bin ich ein Java Greenhorn. Aus den spärlichen Fehlermeldungen von PhantomJS habe ich die Vermutung, dass im inneren der Funktion die Variable 'output' irgendwie nicht definiert ist. Dabei übergebe ich sie doch im Funktionsaufruf.
Ich komme nicht weiter hier. Vielleicht kann da einer von Euch bitte mal drüber schauen und mir helfen ?
Die eigentliche Funktion dieses Skrips soll sein: den Wert der täglichen Niederschlagsmenge von meiner wunderground-Seite auszulesen und als Variable in der pimatic bereit zu stellen. Leider kann ich keine Coffee Datei selbst schreiben. Der Workaroud soll nun über ein Beispiel mit PhantomJS Skript erfolgen, mit dem ich über eine einfache Schnittstelle den Wert in eine Pimatic-Variable schreiben kann, um sie dann weiter zu verarbeiten.
Ich habe das Skript, am Beispiel von google.com aufgebaut. der Fehler bleibt der gleiche.
var webPage = require('webpage');
var page = webPage.create();
var url = "http://www.google.com";
page.open(url, function(status) {
if (status !== 'success') {
console.log('Unable to access network');
} else {
var output=page.plainText;
console.log("Ergebnis 1:" + output);
var searchstring = 'Anmelden';
var position = page.evaluate(function(output, searchstring) {
return output.indexOf(searchstring);
});
console.log("Position von "+searchstring+" = " + position);
}
phantom.exit();
});
Der Fehler lautet:
TypeError: undefined is not an object (evaluating 'output.indexOf')
undefined:2
:3
Position von Anmelden = null
Danke für Eure Hilfe.
seit Stunden der Suche und mit wachsender Verzweiflung bin ich am Ende:
Ich versuche auf einem Raspberry das folgende Skript zum Laufen zu bringen, aber ich kapiere einfach nicht die Syntax.
Zugegeben bin ich ein Java Greenhorn. Aus den spärlichen Fehlermeldungen von PhantomJS habe ich die Vermutung, dass im inneren der Funktion die Variable 'output' irgendwie nicht definiert ist. Dabei übergebe ich sie doch im Funktionsaufruf.
Ich komme nicht weiter hier. Vielleicht kann da einer von Euch bitte mal drüber schauen und mir helfen ?
Die eigentliche Funktion dieses Skrips soll sein: den Wert der täglichen Niederschlagsmenge von meiner wunderground-Seite auszulesen und als Variable in der pimatic bereit zu stellen. Leider kann ich keine Coffee Datei selbst schreiben. Der Workaroud soll nun über ein Beispiel mit PhantomJS Skript erfolgen, mit dem ich über eine einfache Schnittstelle den Wert in eine Pimatic-Variable schreiben kann, um sie dann weiter zu verarbeiten.
Ich habe das Skript, am Beispiel von google.com aufgebaut. der Fehler bleibt der gleiche.
var webPage = require('webpage');
var page = webPage.create();
var url = "http://www.google.com";
page.open(url, function(status) {
if (status !== 'success') {
console.log('Unable to access network');
} else {
var output=page.plainText;
console.log("Ergebnis 1:" + output);
var searchstring = 'Anmelden';
var position = page.evaluate(function(output, searchstring) {
return output.indexOf(searchstring);
});
console.log("Position von "+searchstring+" = " + position);
}
phantom.exit();
});
Der Fehler lautet:
TypeError: undefined is not an object (evaluating 'output.indexOf')
undefined:2
:3
Position von Anmelden = null
Danke für Eure Hilfe.