NEWS
Parser Adapter
-
И по чему вот такое работает:
https://darksky.net/forecast/43.3969,132.1887/si24/de temp swip">(-?\d+)˚<
-
parser.0 2017-02-01 23:23:53.900 error parser.0 Cannot read link "http://192.168.0.89/state": Error: Parse Error
parser.0 2017-02-01 23:23:48.861 error parser.0 Cannot read link "http://192.168.0.89/state": Error: Parse Error
parser.0 2017-02-01 23:23:43.776 error parser.0 Cannot read link "http://192.168.0.89/state": Error: Parse Error
parser.0 2017-02-01 23:23:38.737 error parser.0 Cannot read link "http://192.168.0.89/state": Error: Parse Error
parser.0 2017-02-01 23:23:33.667 error parser.0 Cannot read link "http://192.168.0.89/state": Error: Parse Error
fа если в парсере вбить http://192.168.0.89/state/ - тогда этой ошибки не будет но и значения нет
-
и еще вот такое есть:
parser.0 2017-02-01 23:29:58.630 error at IncomingMessage.g (events.js:180:16)
parser.0 2017-02-01 23:29:58.630 error at IncomingMessage. (C:\ioBroker\node_modules\iobroker.parser\node_modules\request\request.js:1001:12)
parser.0 2017-02-01 23:29:58.630 error at Request.EventEmitter.emit (events.js:95:17)
parser.0 2017-02-01 23:29:58.630 error at Request. (C:\ioBroker\node_modules\iobroker.parser\node_modules\request\request.js:1081:10)
parser.0 2017-02-01 23:29:58.630 error at Request.EventEmitter.emit (events.js:98:17)
parser.0 2017-02-01 23:29:58.630 error at Request.self.callback (C:\ioBroker\node_modules\iobroker.parser\node_modules\request\request.js:186:22)
parser.0 2017-02-01 23:29:58.630 error at Request._callback (C:\ioBroker\node_modules\iobroker.parser\main.js:214:29)
parser.0 2017-02-01 23:29:58.630 error at analyseDataForStates (C:\ioBroker\node_modules\iobroker.parser\main.js:122:5)
parser.0 2017-02-01 23:29:58.630 error at _analyseDataForStates (C:\ioBroker\node_modules\iobroker.parser\main.js:104:9)
parser.0 2017-02-01 23:29:58.630 error at analyseData (C:\ioBroker\node_modules\iobroker.parser\main.js:138:27)
parser.0 2017-02-01 23:29:58.630 error TypeError: Cannot call method 'exec' of undefined
parser.0 2017-02-01 23:29:58.630 error uncaught exception: Cannot call method 'exec' of undefined
parser.0 2017-02-01 23:27:10.091 info starting. Version 0.1.1 in C:/ioBroker/node_modules/iobroker.parser, node: v0.10.25
тока не могу понять с чем это связано
-
и еще вот такое есть:
parser.0 2017-02-01 23:29:58.630 error at IncomingMessage.g (events.js:180:16)
parser.0 2017-02-01 23:29:58.630 error at IncomingMessage. (C:\ioBroker\node_modules\iobroker.parser\node_modules\request\request.js:1001:12)
parser.0 2017-02-01 23:29:58.630 error at Request.EventEmitter.emit (events.js:95:17)
parser.0 2017-02-01 23:29:58.630 error at Request. (C:\ioBroker\node_modules\iobroker.parser\node_modules\request\request.js:1081:10)
parser.0 2017-02-01 23:29:58.630 error at Request.EventEmitter.emit (events.js:98:17)
parser.0 2017-02-01 23:29:58.630 error at Request.self.callback (C:\ioBroker\node_modules\iobroker.parser\node_modules\request\request.js:186:22)
parser.0 2017-02-01 23:29:58.630 error at Request._callback (C:\ioBroker\node_modules\iobroker.parser\main.js:214:29)
parser.0 2017-02-01 23:29:58.630 error at analyseDataForStates (C:\ioBroker\node_modules\iobroker.parser\main.js:122:5)
parser.0 2017-02-01 23:29:58.630 error at _analyseDataForStates (C:\ioBroker\node_modules\iobroker.parser\main.js:104:9)
parser.0 2017-02-01 23:29:58.630 error at analyseData (C:\ioBroker\node_modules\iobroker.parser\main.js:138:27)
parser.0 2017-02-01 23:29:58.630 error TypeError: Cannot call method 'exec' of undefined
parser.0 2017-02-01 23:29:58.630 error uncaught exception: Cannot call method 'exec' of undefined
parser.0 2017-02-01 23:27:10.091 info starting. Version 0.1.1 in C:/ioBroker/node_modules/iobroker.parser, node: v0.10.25
тока не могу понять с чем это связано `
node: v0.10.25 ….. так и не обновил node js? -
Ну похоже что обновил, но не то. Как НОДУ обновить….
С моими хотелками парсера похоже проблемы в коде страницы. Не могу понять.... вот скрины... Может сможешь подсказать куда рыть...
1308_____________.jpg -
и второй
1308_______.jpg -
Ну похоже что обновил, но не то. Как НОДУ обновить…. `
Если Debianapt-get --purge remove node apt-get --purge remove nodejs apt-get autoremove rebootapt-get update apt-get upgrade apt-get install curl build-essential curl -sL https://deb.nodesource.com/setup_4.x | bash - apt-get install -y nodejs reboot -
А если это Windows??
-
Подниму тему. Имею аналогичную проблему при попытке получить статичный файл через веб-морду OpenWrt (веб-сервер uhttpd).
На роутере есть текстовый файлик со значениями, ссылка вида http://192.168.0.1/tmp/lastvolt.txt
curl'ом все прекрасно читается, а вот parser adapter ругается, говорит:
Cannot read link "http://192.168.0.1/tmp/lastvolt.txt": Error: Parse ErrorЗакидываю этот файлик на сервер в интернете - все прекрасно читается и значения получаются.
Запрашиваю веб-морду роутера и пытаюсь её пропарсить:
Адрес: http://192.168.0.1/cgi-bin/luci
Regex: Powered by LuCI ([\d.]+)
Все прекрасно запрашивается и парсится. WGET'ом скачиваю эту страницу в файл и кладу в роутер, parser adapter опять ругается той же ошибкой.
Посмотрел заголовки, которые приходят от серверов:
Запрос веб-морды роутера, удачный парсинг.
curl --head http://192.168.0.1/cgi-bin/luci HTTP/1.1 200 OK Connection: close Transfer-Encoding: chunked Content-Type: text/html Cache-Control: no-cache Expires: 0Запрос нужного файлика с сайта в интернете, удачный парсинг.
curl --head http://site.ru/lastvolt.txt HTTP/1.1 200 OK Server: nginx Date: Mon, 22 Jan 2018 15:30:54 GMT Content-Type: text/plain Content-Length: 66 Last-Modified: Mon, 22 Jan 2018 14:54:48 GMT Connection: keep-alive ETag: "5a65fb38-42" Expires: Mon, 22 Jan 2018 21:01:00 GMT Cache-Control: max-age=19806 Accept-Ranges: bytesЗапрос нужного файлика с роутера, парсинг не получился.
curl --head http://192.168.0.1/tmp/lastvolt.txt HTTP/1.1 200 OK Connection: close ETag: "6ea9-42-5a6601c5" Last-Modified: Mon, 22 Jan 2018 15:22:45 GMT Date: Mon, 22 Jan 2018 15:22:49 GMT Content-Type: text/plain Content-Length: 66Похоже, проблема при получении страницы нодой. К сожалению в ноде не силен и не могу проверить что происходит на уровне кода.
-
Нашел, похоже, в чём проблема https://github.com/request/request/issues/2091
Видать сервер отдает немного кривые заголовки и NODE.request их не пропускает.
Что же делать-то? В сфере умных домов куча всяких роутеров, ардуин и пр. с кривыми заголовками.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden