Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. ioBroker драйвера
    5. Parser Adapter

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Parser Adapter

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      smoker_vvo last edited by

      И по чему вот такое работает:

      https://darksky.net/forecast/43.3969,132.1887/si24/de temp swip">(-?\d+)˚<

      1 Reply Last reply Reply Quote 0
      • S
        smoker_vvo last edited by

        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/ - тогда этой ошибки не будет но и значения нет

        1 Reply Last reply Reply Quote 0
        • S
          smoker_vvo last edited by

          и еще вот такое есть:

          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

          тока не могу понять с чем это связано

          1 Reply Last reply Reply Quote 0
          • I
            instalator last edited by

            @smoker_vvo:

            и еще вот такое есть:

            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?

            1 Reply Last reply Reply Quote 0
            • S
              smoker_vvo last edited by

              Ну похоже что обновил, но не то. Как НОДУ обновить….

              С моими хотелками парсера похоже проблемы в коде страницы. Не могу понять.... вот скрины... Может сможешь подсказать куда рыть...
              1308_____________.jpg

              1 Reply Last reply Reply Quote 0
              • S
                smoker_vvo last edited by

                и второй
                1308_______.jpg

                1 Reply Last reply Reply Quote 0
                • H
                  Haus last edited by

                  @smoker_vvo:

                  Ну похоже что обновил, но не то. Как НОДУ обновить…. `
                  Если Debian

                  apt-get --purge remove node
                  apt-get --purge remove nodejs
                  apt-get autoremove
                  reboot
                  
                  
                  apt-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
                  
                  
                  1 Reply Last reply Reply Quote 0
                  • S
                    smoker_vvo last edited by

                    А если это Windows??

                    1 Reply Last reply Reply Quote 0
                    • I
                      ivan.cc last edited by

                      Подниму тему. Имею аналогичную проблему при попытке получить статичный файл через веб-морду 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
                      
                      

                      Похоже, проблема при получении страницы нодой. К сожалению в ноде не силен и не могу проверить что происходит на уровне кода.

                      1 Reply Last reply Reply Quote 0
                      • I
                        ivan.cc last edited by

                        Нашел, похоже, в чём проблема https://github.com/request/request/issues/2091

                        Видать сервер отдает немного кривые заголовки и NODE.request их не пропускает.

                        Что же делать-то? В сфере умных домов куча всяких роутеров, ардуин и пр. с кривыми заголовками.

                        gajus created this issue in request/request

                        closed Getting HPE_UNEXPECTED_CONTENT_LENGTH trying to proxy HTTPS request #2091

                        1 Reply Last reply Reply Quote 0
                        • I
                          ivan.cc last edited by

                          А может можно сделать, в качестве затычки, чтобы в parser adapter можно было указывать не только файл или URL, но и команду, а парсить уже её результат?

                          Ну или хотя бы сделать возможность использовать CURL/WGET для запроса URL'ов.

                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          696
                          Online

                          31.8k
                          Users

                          80.0k
                          Topics

                          1.3m
                          Posts

                          5
                          20
                          5949
                          Loading More Posts
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes
                          Reply
                          • Reply as topic
                          Log in to reply
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                          The ioBroker Community 2014-2023
                          logo