Esp8266 и вычленение инфы из html страниц

Тема в разделе "ESP8266, ESP32", создана пользователем Paromond, 20 ноя 2020.

  1. Paromond

    Paromond Нуб

    Существует ли возможность "обучить " есп8266 брать нужную информацию с сайта , чтобы потом высветить полученное на lcd? В моих мечтах заставить мк брать с главной страницы Яндекса погоду и курс рубля, если при этом получится имитировать иконку погоды , я упрусь в придел мечтаний . Проблема в том что я совершенно не представляю как заставить esp "фильтровать" html строки и брать только полезное . С нтп серверами (я имел сервер времени ) все просто - что получил с сайта то и вывел на экране , не подвергая данные никакой сортировке. Боже моих мат знаний не хватает даже чтобы до конца сформулировать вопрос , где-то я слышал что подобные операции называется "парсингом" поправьте меня пожалуйста .
     
  2. issaom

    issaom Гуру

    Чтобы, что-то распарсить нужно, чтобы это что-то влезло в память. Вы уверены что у Вас влезет в память куча бесполезной и не нужной информации с главной страницы Яндекса. да и парсить такую страницу будет то еще удовольствие.
    Если нужен курс валют - берите с сайта ЦБ. В моей статье ТУТ как раз есть пример как вытащить нужную информацию в WEB страницы без библиотеки.
    Погоду берите с погодных сервисов, которые вернут Вам только погоду и ничего больше. Хороший пример работы есть ТУТ
     
    SergeiL нравится это.
  3. issaom

    issaom Гуру

    Если сайт возвращает ответ в формате json (многие погодные сервисы так и делают), а писать самому функции поиска нужных строк лень - можно использовать вот это:
    https://arduinojson.org/
    На вот этой станице есть помощник:
    https://arduinojson.org/v6/assistant/
    Кормите ему то что вернет сайт, а он сам за Вас напишет код.
     
  4. Paromond

    Paromond Нуб


    Можно по подробнее , о функциях поиска нужных строк ?.
     
  5. issaom

    issaom Гуру

    Я вам первую ссылку скинул - там готовый пример кода есть. Скачайте и попробуйте разобраться - регистрироваться там нигде не надо.
     
  6. issaom

    issaom Гуру

    Если парсим руками читаем ЭТО:
    Если хотим использовать библиотеку то читаем ЭТО
    Куда тут еще подробнее то ?
     
    SergeiL нравится это.
  7. NikitOS

    NikitOS Король шутов Администратор

    У Яндекс есть API для получения погоды в формате JSON — https://yandex.ru/dev/weather/, ссылка на библиотеку для работы с JSON.
    Курс рубля можно взять с сайта ЦБР: https://cbr.ru/scripts/XML_daily.asp, правда там уже XML, но пример его парсинга можно взять в коде отсюда.
     
    Paromond нравится это.
  8. Paromond

    Paromond Нуб

    большое спасибо