Вопрос про считываение показателей с веб-страницы
Модератор: immortal
Вопрос про считываение показателей с веб-страницы
Здравствуйте!
Только что наткнулся на данный интересный проект Majordomo. Установил его на ПК и захотел считывать показания температуры с моего IoT устройства на базе ES8266, подключенного к домашней wi-fi сети. И вот никак не могу найти на сайте и в форуме инструкцию: как разобрать веб-страницу и считать с нее число? Подскажите, пожалуйста, где про это можно почитать. Наверняка ведь это просто делается.
P.S. Текст на web-странице устройства такой:
-------------
ESP00191CBB
MaksMS wifi-iot.com
Free mode. Get Pro mode
Free memory: 38040 B.
Uptime: 0 day 01:36:21
VDD: 2919 mV. WIFI: -86 dBm.
Updated: 13:06:33 29.03.2017
Sensors:
DHT11/22 1:
Temperature: 23.0 °C. Humidity: 34.0 %.
1-Wire DS18B20:
1: 24.0 °C.
Только что наткнулся на данный интересный проект Majordomo. Установил его на ПК и захотел считывать показания температуры с моего IoT устройства на базе ES8266, подключенного к домашней wi-fi сети. И вот никак не могу найти на сайте и в форуме инструкцию: как разобрать веб-страницу и считать с нее число? Подскажите, пожалуйста, где про это можно почитать. Наверняка ведь это просто делается.
P.S. Текст на web-странице устройства такой:
-------------
ESP00191CBB
MaksMS wifi-iot.com
Free mode. Get Pro mode
Free memory: 38040 B.
Uptime: 0 day 01:36:21
VDD: 2919 mV. WIFI: -86 dBm.
Updated: 13:06:33 29.03.2017
Sensors:
DHT11/22 1:
Temperature: 23.0 °C. Humidity: 34.0 %.
1-Wire DS18B20:
1: 24.0 °C.
- xor
- Сообщения: 2039
- Зарегистрирован: Сб ноя 22, 2014 8:45 pm
- Благодарил (а): 286 раз
- Поблагодарили: 629 раз
Re: Вопрос про считываение показателей с веб-страницы
Посмотрите тему Веб-переменные http://majordomo.smartliving.ru/Main/ModuleWebvars
Но если вы используете прошивку wifi-iot.com, там, по-моему, есть интеграция с Мажордомо отдельной опцией.
Но если вы используете прошивку wifi-iot.com, там, по-моему, есть интеграция с Мажордомо отдельной опцией.
win10 connect https://connect.smartliving.ru/profile/303
-
- Сообщения: 510
- Зарегистрирован: Ср июн 08, 2016 4:17 pm
- Благодарил (а): 124 раза
- Поблагодарили: 101 раз
Re: Вопрос про считываение показателей с веб-страницы
Никакие вебпеременные тут не нужны. Взаимодействие с прошивкой wifi-iot.com осуществляется через модуль ESP8266 (Wifi-IoT). Он есть в маркете дополнений.
Orange pi pc plus, megaD-2561, Xiaomi
--------------------------------------------------
http://connect.smartliving.ru/profile/908
--------------------------------------------------
http://connect.smartliving.ru/profile/908
- savenko_egor
- Сообщения: 705
- Зарегистрирован: Вс авг 03, 2014 8:17 pm
- Откуда: Украина, Запорожье
- Благодарил (а): 108 раз
- Поблагодарили: 147 раз
- Контактная информация:
Re: Вопрос про считываение показателей с веб-страницы
Так а почему Вы официальный WIKI не читаете? Есть же информация: https://wifi-iot.com/p/wiki/24/
-
- Сообщения: 19
- Зарегистрирован: Пт авг 05, 2016 5:13 pm
- Благодарил (а): 5 раз
- Поблагодарили: 1 раз
Re: Вопрос про считываение показателей с веб-страницы
В тему о веб-переменных вопрос.
Есть страница "https://www.gismeteo.ru/weather-snizhne-12016/"
пытаюсь достать с неё значение температуры, указывая в шаблоне поиска "js_meas_container temperature tab-weather__value" data-value='(.+?)'>", но не показывает значений.
Пробовал с другого сайта взять (rp5), но итог тот же.
Для проверки попытался взять информацию с любого адреса http, т.е. не https и все удалось.
Верно ли предположение, что проблема именно в этом?
Просто, используя онлайн калькулятор подсунул ему весь код страницы и указанный шаблон поиска и калькулятор нормально отработал. Или можно что-то доставить, чтобы нормально отрабатывало и с https страницами? Другие переменные все использую http.
Есть страница "https://www.gismeteo.ru/weather-snizhne-12016/"
пытаюсь достать с неё значение температуры, указывая в шаблоне поиска "js_meas_container temperature tab-weather__value" data-value='(.+?)'>", но не показывает значений.
Пробовал с другого сайта взять (rp5), но итог тот же.
Для проверки попытался взять информацию с любого адреса http, т.е. не https и все удалось.
Верно ли предположение, что проблема именно в этом?
Просто, используя онлайн калькулятор подсунул ему весь код страницы и указанный шаблон поиска и калькулятор нормально отработал. Или можно что-то доставить, чтобы нормально отрабатывало и с https страницами? Другие переменные все использую http.
- savenko_egor
- Сообщения: 705
- Зарегистрирован: Вс авг 03, 2014 8:17 pm
- Откуда: Украина, Запорожье
- Благодарил (а): 108 раз
- Поблагодарили: 147 раз
- Контактная информация:
Re: Вопрос про считываение показателей с веб-страницы
Хм... Не знаю, у меня например всё отлично и по HTTPS работает:
СпойлерПоказать
-
- Сообщения: 19
- Зарегистрирован: Пт авг 05, 2016 5:13 pm
- Благодарил (а): 5 раз
- Поблагодарили: 1 раз
Re: Вопрос про считываение показателей с веб-страницы
Ну подскажи, плз, шаблон поиска у тебя такой, как я писал или что другое?warik писал(а):Хм... Не знаю, у меня например всё отлично и по HTTPS работает:СпойлерПоказать
- savenko_egor
- Сообщения: 705
- Зарегистрирован: Вс авг 03, 2014 8:17 pm
- Откуда: Украина, Запорожье
- Благодарил (а): 108 раз
- Поблагодарили: 147 раз
- Контактная информация:
Re: Вопрос про считываение показателей с веб-страницы
На этой странице: https://www.gismeteo.ua/weather-zaporizhzhya-5093/ выбираю температуру таким шаблоном:
Вот может поможет в поиске правильного выражения.
Код: Выделить всё
<dd class='value m_temp c'>+(.+?)<span class="meas">
СпойлерПоказать
-
- Сообщения: 19
- Зарегистрирован: Пт авг 05, 2016 5:13 pm
- Благодарил (а): 5 раз
- Поблагодарили: 1 раз
Re: Вопрос про считываение показателей с веб-страницы
Спасибо за подсказку, но мне не помогло. Заметил, что у вас запрос к гисметео из зоны ua, у меня был прописан ru (сайты немного отличаются).warik писал(а):На этой странице: https://www.gismeteo.ua/weather-zaporizhzhya-5093/ выбираю температуру таким шаблоном:Код: Выделить всё
<dd class='value m_temp c'>+(.+?)<span class="meas">
Вот может поможет в поиске правильного выражения.СпойлерПоказать
Подставил у себя зону ua, прописал ваш шаблон поиска, но ничего не показало. После попытался вообще ваши данные себе прописать, но информации о температуре так и не получил. Смотрю, у вас Debian стоит, как и у меня. Подозреваю, что именно в системе не хватает каких-то пакетов, что не осуществляет запроса по https.
- savenko_egor
- Сообщения: 705
- Зарегистрирован: Вс авг 03, 2014 8:17 pm
- Откуда: Украина, Запорожье
- Благодарил (а): 108 раз
- Поблагодарили: 147 раз
- Контактная информация:
Re: Вопрос про считываение показателей с веб-страницы
Ну по сути самое минимальное что нужно, навскидку, это curl (так же скорее всего libcurl) и wget. Это неточно. Чисто на мой взгляд.
Как вариант попробуйте через консоль curl-ом стянуть сайт:
Если данные будут, значит доступ к сайту есть и проблем с этим нет. Я бы ещё попробовал создать php файл в котором открыть curl сессию и стянуть эту же ссылку. В таком случае Вы исключите проблему с PHP.
UPD:
Ну да, курла там очень много)))
Как вариант попробуйте через консоль curl-ом стянуть сайт:
Код: Выделить всё
curl https://www.gismeteo.ru/weather-snizhne-12016/
UPD:
Ну да, курла там очень много)))
Код: Выделить всё
apt-get install curl libcurl3 libcurl3-dev php5-curl -y