NEWS
Wunsch: Pollenflug-(Adapter/wasauchimmer)
-
Mhhh, ich setze mal das Skript hier rein - vielleicht vergleichst du mal was ob was anders ist ?
Polleninfo.txt -
@Segway
Danke:
nach den ersten Zeilen hatte ich die Lust verloren und es einfach als neues Skript einkopiert.
Ort eingetragen und den Pfad von wetter.polleninfo in wetter2.polleninfo geändertgestartet - selber Fehler (eine Zeile vorher)
Mag sein, dass in deinem eine Zeile fehlt
EDIT: du hast den import request auskommentiert
HEISST DAS, dass in der Zeilennummerierung der Fehlermeldung ALLE Kommentarzeilen nicht mitgezählt werden?Habe dann ncohmal die Seite im Browser aufgerufen und gesehen, dass diese automatisch auf https wechselt.
Diese Änderung im Script half aber auch nicht -
@Homoran sagte in Wunsch: Pollenflug-(Adapter/wasauchimmer):
EDIT: du hast den import request auskommentiert
Yep das ist bei mir auskommentiert!
@Homoran sagte in Wunsch: Pollenflug-(Adapter/wasauchimmer):
HEISST DAS, dass in der Zeilennummerierung der Fehlermeldung ALLE Kommentarzeilen nicht mitgezählt werden?
Ich glaube nciht, ich mache das immer so, dass ich den Code komplett in zB NOtepadd++ reinkopiere mir dort die Zeilennummer raushole, die im Log "angemeckert" wird. Demnach müsste er auch auskommentierte Zeilen mitzählen.
Warum das bei dir nciht geht ? Mhhh, kannst du irgendwie überprüfen, ob das Zusatzmodul "request" überhaupt installiert wurde ? Ich meine sowas mal bei mir gehabt zu haben, dass obwohl es angegeben war gar nciht installiert wurde.
-
@Segway sagte in Wunsch: Pollenflug-(Adapter/wasauchimmer):
ob das Zusatzmodul "request" überhaupt installiert wurde ? Ich meine sowas mal bei mir gehabt zu haben, dass obwohl es angegeben war gar nciht installiert wurde.
Super Idee - WIE???
-
@Segway
google ist mein Freund:pi@ioBroker01:~$ npm show request version 2.88.0
Dann kam auf einmal:
╭───────────────────────────────────────────────────────────────╮ │ │ │ New minor version of npm available! 6.4.1 → 6.9.0 │ │ Changelog: https://github.com/npm/cli/releases/tag/v6.9.0 │ │ Run npm install -g npm to update! │ │ │ ╰───────────────────────────────────────────────────────────────╯
ob ich das mal machen sollte?
-
...auch mit 6.9.0 wird es nicht funktionieren, hab ich nämlich ^^
-
@SBorg
...und wo hängt es denn, dass es bei einigen funktioniert?? -
IMHO am JS-Controller. Seit 1.5.7 geht es bei mir nicht mehr. Ich habe mir dann für wetteronline ein bash-Skript zusammen gehämmert. Schon sind die Daten wieder da, braucht keine Ressourcen und ich kann es selbst pflegen
-
@SBorg
ich habe aber noch den 1.4.2
Das kann es nicht sein.Jetzt kam wenigstens die Fehlermeldung:
javascript.0 script.js.Wetter_und_Klima.Pollenskript: TypeScript compilation had errors: import request = require("request"); ^ ERROR: Cannot find module 'request'.
Aber laut putty ist es da
-
Habe noch zwei ungelöste Threads gefunden:
https://forum.iobroker.net/topic/18086/js-request-modul-installieren
und
https://forum.iobroker.net/topic/17321/typescript-modul-request-geht-nicht-mehr -
Ok, Theorie gestrichen, zumindest mochte er ab da bei mir nicht mehr
Ersetze mal die "request-Zeile" jeweils mit diesen beiden Versionen:import * as request from "request"; oder const request = require("request");
-
@SBorg sagte in Wunsch: Pollenflug-(Adapter/wasauchimmer):
import * as request from "request";
Danke!
Antwort1:
javascript.0 script.js.Wetter_und_Klima.Pollenskript: TypeScript compilation had errors: import * as request from "request"; ^ ERROR: Cannot find module 'request'.
Antwort2:
javascript.0 script.js.Wetter_und_Klima.Pollenskript: TypeScript compilation had errors: const request = require("request"); ^ ERROR: Cannot redeclare block-scoped variable 'request'.
Das Skript ist aber in TypeScript geschrieben
-
Sprach der Blinde zum tauben...
Ich kann zwar leidlich JS, aber TS ist ne andere Hausnummer. Zumindest Antwort 1 ist mir mittlerweile klar, es braucht keinen "import" mehr.
Zumindest habe ich jetzt keinen Compilation-Error mehr (geht aber immer noch nicht).
Füge mal ganz oben unter "use strict..." ~Zeile 8 noch einexport {};
ein, ev. geht es ja bei dir.
-
@SBorg sagte in Wunsch: Pollenflug-(Adapter/wasauchimmer):
IMHO am JS-Controller. Seit 1.5.7
Läuft bei mir mit 1.5.7 einwandfrei
-
javascript.0 script.js.Wetter_und_Klima.Pollenskript: TypeScript compilation had errors: import request = require("request"); ^ ERROR: Cannot find module 'request'.
Ich habe aber wieder in Zeile +/- 152 den import reingenommen
-
@Homoran sagte in Wunsch: Pollenflug-(Adapter/wasauchimmer):
const request = require("request");
Ne, der "import" wird nicht funktionieren, deswegen läuft es bei @Segway auch bspw. einfach durch auskommentieren. Der "richtige" Weg ist schon
const request = require("request");
aber anscheinend hat er dann, warum auch immer, ein Problem die Seite zu parsen (vermutlich weil request doch nicht funktioniert...).
-
@SBorg sagte in Wunsch: Pollenflug-(Adapter/wasauchimmer):
const request = require("request");
Ok
Also wieder zurück und siehe da:13:38:12.863 info javascript.0 script.js.Wetter_und_Klima.Pollenskript: TypeScript compilation successful
Aber die anderen Fehler bleiben und die WErte werden nicht gefüllt
-
Also ich revidiere folgendes:
Auf meinem Produktivsystem gerade eingespielt das Skript und es läuft auch nicht. Nun bin ich genau so schlauh wie Ihr:
13:44:34.106 [error] javascript.0 script.js.UserDefined.DasWetter.Pollenvorhersage: TypeScript compilation failed: import request = require("request"); ^ ERROR: Cannot find module 'request'.
und
javascript.0 2019-03-11 13:44:34.104 error ERROR: Cannot find module 'request'. javascript.0 2019-03-11 13:44:34.104 error ^ javascript.0 2019-03-11 13:44:34.104 error import request = require("request"); javascript.0 2019-03-11 13:44:34.104 error script.js.UserDefined.DasWetter.Pollenvorhersage: TypeScript compilation failed:
-
^^ Solange man es anscheinend kpl. in Ruhe lässt funktioniert es...
Darf man hier fluchen und mal K*cke in die Runde werfen (nur wörtlich, nicht physisch )
Funktioniert bei mir, also geht auch request. Probiert bitte mal folgendes:
Neues TS mit folgendem Inhalt anlegenexport {}; const request = require('request'); request('https://api.nasa.gov/planetary/apod?api_key=DEMO_KEY', { json: true }, (err, res, body) => { if (err) { return console.log(err); } console.log(body.url); console.log(body.explanation); });
Da sollte nun bisserl was in der Console auftauchen...
-
Um kurz meinen Senf dazu zu geben:
request
ist im JS-Adapter per Default geladen und muss nicht extra importiert oder required werden.- Warnmeldungen im Callback bedeuten für mich, dass der Request funktioniert hat, aber die Antwort ein Problem enthält oder fehlerhaft ausgewertet wird.
Es sollte also eine noch kürzere Version des Skripts von meinem Vorposter funktionieren:
request('https://api.nasa.gov/planetary/apod?api_key=DEMO_KEY', { json: true }, (err, res, body) => { if (err) { return console.log(err); } console.log(body.url); console.log(body.explanation); });