[Модуль] Погода Яндекс (yandexweather)

Разработка дополнительных модулей, подключение различных приложений.

Модератор: immortal

ZyaK
Сообщения: 407
Зарегистрирован: Вт окт 24, 2017 2:01 pm
Откуда: Ижевск
Благодарил (а): 45 раз
Поблагодарили: 69 раз

Re: [Модуль] Погода Яндекс (yandexweather)

Сообщение ZyaK » Чт май 27, 2021 8:36 pm

закинул файл и ваще всё пропало
Вложения
4.JPG
4.JPG (39.36 КБ) 2623 просмотра
PI2 + MQTT + 5 ESP8266 + Atmega16
ZyaK
Сообщения: 407
Зарегистрирован: Вт окт 24, 2017 2:01 pm
Откуда: Ижевск
Благодарил (а): 45 раз
Поблагодарили: 69 раз

Re: [Модуль] Погода Яндекс (yandexweather)

Сообщение ZyaK » Вс май 30, 2021 9:08 am

papant писал(а):
Ср май 05, 2021 9:48 pm
dimaxus писал(а):
Чт мар 11, 2021 6:37 pm
Добрый вечер всем. Уважаемый Михря вчера перестал работать ваш парсер , хотя последние 3 месяца прекрасно работал. Может что в Яндексе изменили, как проверить, подправить? Или проблема только у меня?
Тоже попробовал тем парсером содрать погоду - не получилось, походу яндекс стал бороться с роботами и по тому адресу стало невозможно спарсить данные, по крайней мере у меня не получилось )
В меру своих возможностей, а они у меня весьма скудные, сделал свой парсер, если оптимизируете код и наведете в нем красоту буду благодарен, я пользуюсь как есть )
Вот код, который надо положить в скрипты и запускать по таймеру раз в час например:

Код: Выделить всё

    $city = 41; // поменять на свой
    $url= 'https://yandex.ru/pogoda/' . $city;
    $str = file_get_contents($url);
    $dom = phpQuery::newDocument($str);
  // считываем данные на несколько дней вперед
   foreach($dom->find(".forecast-briefly__day-link") as $key => $value){
  // Преобразуем dom объект в объект phpQuery.
  //Делаем сие действие с помощью метода pq(); который является аналогом ($) в jQuery.
    $pq = pq($value);
  // Находим в этом элементе элементы 
    $day[$key]["day"] = $pq->find(".forecast-briefly__name")->text();
    $day[$key]["time"] = $pq->find(".forecast-briefly__date")->text();
    $day[$key]["icon"] = $pq->find(".forecast-briefly__icon")->attr('src');  
    $day[$key]["temp_day"] = $pq->find(".forecast-briefly__temp_day .temp__value")->text();
    $day[$key]["temp_night"] = $pq->find(".forecast-briefly__temp_night .temp__value")->text();
    $day[$key]["condition"] = $pq->find(".forecast-briefly__condition")->text();
   }
	// заменить 10 на количество дней, за которые хотите иметь погоду
    for ($i = 1; $i <= 10; $i++) {
    // все глобальные свойства ниже создадутся автоматически, необходимо создать только weather
     	sg("weather.day".$i,$day[$i]["day"] );
   		sg("weather.time".$i,$day[$i]["time"] );
        $day[$i]["icon"] = str_replace("//yastatic.net/weather/i/icons/funky/dark/", '/cms/scenes/new/icons/', $day[$i]["icon"]);
        $day[$i]["icon"] = str_replace("png", "svg", $day[$i]["icon"]);
		sg("weather.icon".$i,$day[$i]["icon"] );
        sg("weather.temp_day".$i,$day[$i]["temp_day"] );
		sg("weather.temp_night".$i,$day[$i]["temp_night"] );
		sg("weather.condition".$i,$day[$i]["condition"] );
    }
  //считываем данные за текущий день  
    $pq=pq($dom->find(".fact") );
    $fact["temp"] = $pq->find(".fact__temp-wrap .link .fact__temp .temp__value")->text();
    $fact["icon"] = $pq->find(".fact__temp-wrap .link .icon")->attr('src');  
    $fact["feel"] = $pq->find(".fact__temp-wrap .link .link__feelings .term .term__value")->text();
    $fact["wind"] = $pq->find(".fact__props .fact__wind-speed .term__value .wind-speed")->text();
    $fact["wind_word"] = $pq->find(".fact__props .fact__wind-speed .term__value")->attr('aria-label'); 
	$fact["wind_dir"] = $pq->find(".fact__props .fact__wind-speed .term__value .fact__unit .icon-abbr")->text();
    $fact["hum"] = $pq->find(".fact__props .fact__humidity .term__value ")->text(); 
    $fact["hum_word"] = $pq->find(".fact__props .fact__humidity .term__value ")->attr('aria-label'); 
	$fact["press"] = $pq->find(".fact__props .fact__pressure .term__value")->text();
    $fact["press_word"] = $pq->find(".fact__props .fact__pressure .term__value")->attr('aria-label'); 

    $fact["icon"] = str_replace("//yastatic.net/weather/i/icons/funky/light/", '/cms/scenes/new/icons/', $fact["icon"]);
    $fact["icon"] = str_replace("png", "svg", $fact["icon"]);
  
//соберем погоду по часам
    $i=0; //счетчик
    foreach($dom->find(".fact__hour") as $key => $value){
      $pq = pq($value);
      if (substr($pq->find(".fact__hour-elem .fact__hour-label")->text(),-3)==":00"   ) { //если время заканчивается на целый час
       	// то сохраним в массив, иначе это было время восхода/заката и это включать в массив не будем
      	$hours[$i]["time"] = $pq->find(".fact__hour-elem .fact__hour-label")->text();
      	$hours[$i]["icon"]= $pq->find(".fact__hour-elem .icon")->attr('src');
      	$hours[$i]["temp"]= $pq->find(".fact__hour-elem .fact__hour-temp")->text();
      	$i=$i+1;//увеличим счетчик
      } 
     }

	$j=0;//счетчик
    for ($i = 0; $i <= count($hours); $i+=6) { //выведем только кажый 6-ой час
   	    $hours[$i]["icon"]= str_replace("//yastatic.net/weather/i/icons/funky/flat/", '/cms/scenes/new/icons/', $hours[$i]["icon"]);
    	$hours[$i]["icon"] = str_replace("png", "svg", $hours[$i]["icon"]);
		sg("weather.hour_time".$j,$hours[$i]["time"] );
     	sg("weather.hour_icon".$j,$hours[$i]["icon"] );
     	sg("weather.hour_temp".$j,$hours[$i]["temp"] );
        $j+=1;
    } 

    sg("weather.fact_temp",$fact["temp"] );
    sg("weather.fact_icon",$fact["icon"] );
	sg("weather.fact_feel",$fact["feel"] );
    sg("weather.fact_wind",$fact["wind"] );
    sg("weather.fact_wind_word",$fact["wind_word"] );
    sg("weather.fact_wind_dir",$fact["wind_dir"] );
    sg("weather.fact_hum",$fact["hum"] );
	sg("weather.fact_hum_word",$fact["hum_word"] );
	sg("weather.fact_press",$fact["press"] );
	sg("weather.fact_press_word",$fact["press_word"] );


	// заменить 10 на количество необходимых прогнозируемых дней
    for ($i = 1; $i <= 10; $i++) {
    // все глобальные свойства ниже создадутся автоматически, необходимо создать только weather
     	sg("weather.day".$i,$day[$i]["day"] );
   		sg("weather.time".$i,$day[$i]["time"] );
        $day[$i]["icon"] = str_replace("//yastatic.net/weather/i/icons/funky/dark/", '/cms/scenes/new/icons/', $day[$i]["icon"]);
        $day[$i]["icon"] = str_replace("png", "svg", $day[$i]["icon"]);
		sg("weather.icon".$i,$day[$i]["icon"] );
        sg("weather.temp_day".$i,$day[$i]["temp_day"] );
		sg("weather.temp_night".$i,$day[$i]["temp_night"] );
		sg("weather.condition".$i,$day[$i]["condition"] );
    }

   //восход, закат
	$sunrise=pq($dom->find(".sun-card__sunrise-sunset-info_value_rise-time") );
	$sunrise=substr($sunrise->text() , -5); //нужны только последние 5 символов
    $sunset =pq($dom->find(".sun-card__sunrise-sunset-info_value_set-time") );
	$sunset=substr($sunset->text(), -5); //нужны только последние 5 символов
	sg("weather.sunrise",$sunrise);
	sg("weather.sunset",$sunset);
    sg("weather.updated", date('l jS \of F Y h:i:s A'));


Запустил, вроде данные по погоде начали приходить, подскажите иконки он как то подтягивает сам или надо скачать откуда то и закинуть в папку?
PI2 + MQTT + 5 ESP8266 + Atmega16
Аватара пользователя
Djeday999
Сообщения: 45
Зарегистрирован: Сб май 29, 2021 3:04 pm
Откуда: Екатеринбург
Благодарил (а): 6 раз
Поблагодарили: 9 раз

Re: [Модуль] Погода Яндекс (yandexweather)

Сообщение Djeday999 » Вс май 30, 2021 10:12 pm

ZyaK писал(а):
Вс май 30, 2021 9:08 am
papant писал(а):
Ср май 05, 2021 9:48 pm
dimaxus писал(а):
Чт мар 11, 2021 6:37 pm
Добрый вечер всем. Уважаемый Михря вчера перестал работать ваш парсер , хотя последние 3 месяца прекрасно работал. Может что в Яндексе изменили, как проверить, подправить? Или проблема только у меня?
Тоже попробовал тем парсером содрать погоду - не получилось, походу яндекс стал бороться с роботами и по тому адресу стало невозможно спарсить данные, по крайней мере у меня не получилось )
В меру своих возможностей, а они у меня весьма скудные, сделал свой парсер, если оптимизируете код и наведете в нем красоту буду благодарен, я пользуюсь как есть )
Вот код, который надо положить в скрипты и запускать по таймеру раз в час например:

Код: Выделить всё

    $city = 41; // поменять на свой
    $url= 'https://yandex.ru/pogoda/' . $city;
    $str = file_get_contents($url);
    $dom = phpQuery::newDocument($str);
  // считываем данные на несколько дней вперед
   foreach($dom->find(".forecast-briefly__day-link") as $key => $value){
  // Преобразуем dom объект в объект phpQuery.
  //Делаем сие действие с помощью метода pq(); который является аналогом ($) в jQuery.
    $pq = pq($value);
  // Находим в этом элементе элементы 
    $day[$key]["day"] = $pq->find(".forecast-briefly__name")->text();
    $day[$key]["time"] = $pq->find(".forecast-briefly__date")->text();
    $day[$key]["icon"] = $pq->find(".forecast-briefly__icon")->attr('src');  
    $day[$key]["temp_day"] = $pq->find(".forecast-briefly__temp_day .temp__value")->text();
    $day[$key]["temp_night"] = $pq->find(".forecast-briefly__temp_night .temp__value")->text();
    $day[$key]["condition"] = $pq->find(".forecast-briefly__condition")->text();
   }
	// заменить 10 на количество дней, за которые хотите иметь погоду
    for ($i = 1; $i <= 10; $i++) {
    // все глобальные свойства ниже создадутся автоматически, необходимо создать только weather
     	sg("weather.day".$i,$day[$i]["day"] );
   		sg("weather.time".$i,$day[$i]["time"] );
        $day[$i]["icon"] = str_replace("//yastatic.net/weather/i/icons/funky/dark/", '/cms/scenes/new/icons/', $day[$i]["icon"]);
        $day[$i]["icon"] = str_replace("png", "svg", $day[$i]["icon"]);
		sg("weather.icon".$i,$day[$i]["icon"] );
        sg("weather.temp_day".$i,$day[$i]["temp_day"] );
		sg("weather.temp_night".$i,$day[$i]["temp_night"] );
		sg("weather.condition".$i,$day[$i]["condition"] );
    }
  //считываем данные за текущий день  
    $pq=pq($dom->find(".fact") );
    $fact["temp"] = $pq->find(".fact__temp-wrap .link .fact__temp .temp__value")->text();
    $fact["icon"] = $pq->find(".fact__temp-wrap .link .icon")->attr('src');  
    $fact["feel"] = $pq->find(".fact__temp-wrap .link .link__feelings .term .term__value")->text();
    $fact["wind"] = $pq->find(".fact__props .fact__wind-speed .term__value .wind-speed")->text();
    $fact["wind_word"] = $pq->find(".fact__props .fact__wind-speed .term__value")->attr('aria-label'); 
	$fact["wind_dir"] = $pq->find(".fact__props .fact__wind-speed .term__value .fact__unit .icon-abbr")->text();
    $fact["hum"] = $pq->find(".fact__props .fact__humidity .term__value ")->text(); 
    $fact["hum_word"] = $pq->find(".fact__props .fact__humidity .term__value ")->attr('aria-label'); 
	$fact["press"] = $pq->find(".fact__props .fact__pressure .term__value")->text();
    $fact["press_word"] = $pq->find(".fact__props .fact__pressure .term__value")->attr('aria-label'); 

    $fact["icon"] = str_replace("//yastatic.net/weather/i/icons/funky/light/", '/cms/scenes/new/icons/', $fact["icon"]);
    $fact["icon"] = str_replace("png", "svg", $fact["icon"]);
  
//соберем погоду по часам
    $i=0; //счетчик
    foreach($dom->find(".fact__hour") as $key => $value){
      $pq = pq($value);
      if (substr($pq->find(".fact__hour-elem .fact__hour-label")->text(),-3)==":00"   ) { //если время заканчивается на целый час
       	// то сохраним в массив, иначе это было время восхода/заката и это включать в массив не будем
      	$hours[$i]["time"] = $pq->find(".fact__hour-elem .fact__hour-label")->text();
      	$hours[$i]["icon"]= $pq->find(".fact__hour-elem .icon")->attr('src');
      	$hours[$i]["temp"]= $pq->find(".fact__hour-elem .fact__hour-temp")->text();
      	$i=$i+1;//увеличим счетчик
      } 
     }

	$j=0;//счетчик
    for ($i = 0; $i <= count($hours); $i+=6) { //выведем только кажый 6-ой час
   	    $hours[$i]["icon"]= str_replace("//yastatic.net/weather/i/icons/funky/flat/", '/cms/scenes/new/icons/', $hours[$i]["icon"]);
    	$hours[$i]["icon"] = str_replace("png", "svg", $hours[$i]["icon"]);
		sg("weather.hour_time".$j,$hours[$i]["time"] );
     	sg("weather.hour_icon".$j,$hours[$i]["icon"] );
     	sg("weather.hour_temp".$j,$hours[$i]["temp"] );
        $j+=1;
    } 

    sg("weather.fact_temp",$fact["temp"] );
    sg("weather.fact_icon",$fact["icon"] );
	sg("weather.fact_feel",$fact["feel"] );
    sg("weather.fact_wind",$fact["wind"] );
    sg("weather.fact_wind_word",$fact["wind_word"] );
    sg("weather.fact_wind_dir",$fact["wind_dir"] );
    sg("weather.fact_hum",$fact["hum"] );
	sg("weather.fact_hum_word",$fact["hum_word"] );
	sg("weather.fact_press",$fact["press"] );
	sg("weather.fact_press_word",$fact["press_word"] );


	// заменить 10 на количество необходимых прогнозируемых дней
    for ($i = 1; $i <= 10; $i++) {
    // все глобальные свойства ниже создадутся автоматически, необходимо создать только weather
     	sg("weather.day".$i,$day[$i]["day"] );
   		sg("weather.time".$i,$day[$i]["time"] );
        $day[$i]["icon"] = str_replace("//yastatic.net/weather/i/icons/funky/dark/", '/cms/scenes/new/icons/', $day[$i]["icon"]);
        $day[$i]["icon"] = str_replace("png", "svg", $day[$i]["icon"]);
		sg("weather.icon".$i,$day[$i]["icon"] );
        sg("weather.temp_day".$i,$day[$i]["temp_day"] );
		sg("weather.temp_night".$i,$day[$i]["temp_night"] );
		sg("weather.condition".$i,$day[$i]["condition"] );
    }

   //восход, закат
	$sunrise=pq($dom->find(".sun-card__sunrise-sunset-info_value_rise-time") );
	$sunrise=substr($sunrise->text() , -5); //нужны только последние 5 символов
    $sunset =pq($dom->find(".sun-card__sunrise-sunset-info_value_set-time") );
	$sunset=substr($sunset->text(), -5); //нужны только последние 5 символов
	sg("weather.sunrise",$sunrise);
	sg("weather.sunset",$sunset);
    sg("weather.updated", date('l jS \of F Y h:i:s A'));


Запустил, вроде данные по погоде начали приходить, подскажите иконки он как то подтягивает сам или надо скачать откуда то и закинуть в папку?
Иконки тут скачать можно
https://mjdm.ru/forum/viewtopic.php?f=5 ... %B8#p34258
За это сообщение автора Djeday999 поблагодарил:
ZyaK (Пн май 31, 2021 7:29 am)
Рейтинг: 1.16%
Аватара пользователя
webms
Сообщения: 498
Зарегистрирован: Чт дек 15, 2016 3:13 am
Благодарил (а): 221 раз
Поблагодарили: 88 раз

Re: [Модуль] Погода Яндекс (yandexweather)

Сообщение webms » Пн июн 21, 2021 11:37 am

Мой вариант, мне нужно просто
Данные за сегодня и погоду на завтра для голосовых сценарий

Код: Выделить всё

$city_id = 213; //Москва
//ID города Люберцы: 10738

$data_file = "https://export.yandex.ru/bar/reginfo.xml?region=$city_id.xml?".rand(); // адрес xml файла
$xml = simplexml_load_file($data_file); // раскладываем xml на массив
if ($xml === false) { // Проверить можно также !is_object( $xml ) или !$xml
 
  	$remindCounter = (int)gg('Common.ReminderCountPogoda');
	$remindCounter++;
    sg('Common.ReminderCountPogoda', $remindCounter); //+1 в поле считыватель
 
    if (gg("Communication.stateColor") == 'green') {
 	  if ($remindCounter >= 3) { registerError('Яндекс.Погода не обновляется', 'Ошибка'); }
    }
 
    setTimeOut("restart_PogodaYandex", "runScript('PogodaYandex');", 15*60);
    return;
} else {
sg('Common.ReminderCountPogoda', 0); //сбрасываем флаг
 
$temp = $xml -> weather -> day -> day_part -> temperature; // температура сейчас
$temp = getTempSign($temp); // Если значение температуры положительно, для наглядности добавляем "+"

$tomorrow = $xml -> weather -> day -> tomorrow -> temperature; // температура завтра
$tomorrow = getTempSign($tomorrow);

$avg_temp_from = $xml -> weather -> day -> day_part['4'] -> temperature_from; // средняя температура сегодня "от"
$avg_temp_from = getTempSign($avg_temp_from);

$avg_temp_to = $xml -> weather -> day -> day_part['4'] -> temperature_to; // средняя температура сегодня "до"
$avg_temp_to = getTempSign($avg_temp_to);

// сохраняем основные параметры текущей погоды
//sg("PogodaYandex.City", $xml -> weather -> day -> title);
if ($temp != 0) {
 sg("PogodaYandex.Temp", $temp);
 sg("PogodaYandex.Tomorrow", $tomorrow);
 sg("PogodaYandex.AVG_Temp_From", $avg_temp_from);
 sg("PogodaYandex.AVG_Temp_To", $avg_temp_to);
} else { say('Скрипт погоды вернул ответ 0. Я пропустила это значение.', 0); }
sg("PogodaYandex.Type", $xml -> weather -> day -> day_part -> weather_type);
sg("PogodaYandex.Pressure", $xml -> weather -> day -> day_part -> pressure);

// Влажность
sg("PogodaYandex.Humidity", $xml -> weather -> day -> day_part -> dampness);
sg("PogodaYandex.WindSpeed", $xml -> weather -> day -> day_part -> wind_speed);
sg("PogodaYandex.Image", $xml -> weather -> day -> day_part -> image);
sg("PogodaYandex.Image2", $xml -> weather -> day -> day_part -> { 'image-v3' });

// Направление ветра
sg("PogodaYandex.WindDir", $xml -> weather -> day -> day_part -> wind_direction);

// Солнце: восход/закат
sg("PogodaYandex.SunRise", $xml -> weather -> day -> sun_rise);
sg("PogodaYandex.SunSet", $xml -> weather -> day -> sunset);
$DayStart = explode(":", gg("PogodaYandex.SunRise"));
$DayEnd = explode(":", gg("PogodaYandex.SunSet"));
$h_start = (int) $DayStart[0];
$m_start = (int) $DayStart[1];
$h_end = (int) $DayEnd[0];
$m_end = (int) $DayEnd[1];

$dh = $h_end - $h_start;
$dm = $m_end - $m_start;

if ($dm < 0) {
    $dh = $dh - 1;
    $dm = $dm + 60;
}
sg("PogodaYandex.LongTag", "$dh:$dm");

// длинный текстовый прогноз погоды
$metcast = "На улице ".gg("PogodaYandex.Type").".";
// ветер
$WindSpeed = (float) gg("PogodaYandex.WindSpeed");
if ($WindSpeed < 1) {
    $metcast.= ' Ветра, скорее всего, нет.';
}
elseif($WindSpeed < 3) {
    $metcast.= ' Возможен слабый ветер.';
}
elseif($WindSpeed < 8) {
    $metcast.= ' Возможен умеренный ветер.';
}
elseif($WindSpeed < 13) {
    $metcast.= ' Возможен сильный ветер.';
}
elseif($WindSpeed < 20) {
    $metcast.= ' Возможен довольно сильный ветер.';
}
elseif($WindSpeed < 28) {
    $metcast.= ' Возможен штормовой ветер.';
} else {
    $metcast.= ' Ветер очень очень сильный, УРАГАН!. ';
}

$w = round(strip_tags(gg("PogodaYandex.Temp")));
$tempw = $w;

if ($w < "0") {
    $tempw = abs($w);
}
if ($w > "0") {
    $templus = " плюс ";
}

if ($tempw >= 11 and $tempw <= 14) {
    $tempcels = " градусов";
} else {
    while ($tempw > 9) {
        $tempw = $tempw - 10;
    }

    if ($tempw == 0 or $tempw >= 5 and $tempw <= 9) {
        $tempcels = "градусов";
    }
    if ($tempw == 1) {
        $tempcels = "градус";
    }
    if ($tempw >= 2 and $tempw <= 4) {
        $tempcels = "градуса";
    }
}
$metcast.= ' Температура '.gg("PogodaYandex.Temp").' '.$tempcels.'.';
$tm = (float) gg("PogodaYandex.Temp");
if ($tm < -40) {
    $metcast.= ' Очень очень очень холодно!.';
}
elseif($tm < -30) {
    $metcast.= ' Очень холодно, оденьтесь теплее.';
}
elseif($tm < -20) {
    $metcast.= ' Очень холодно.';
}
elseif($tm < -10) {
    $metcast.= ' Холодно.';
}
elseif($tm < -3) {
    $metcast.= ' Не особо холодно.';
}
elseif($tm < 3) {
    $metcast.= ' Значит, возможно, гололёд.';
}
elseif($tm < 10) {
    $metcast.= ' Прохладно.';
}
elseif($tm < 25) {
    $metcast.= ' Тепло.';
}
elseif($tm < 30) {
    $metcast.= ' Жарко.';
}
elseif($tm > 30) {
    $metcast.= ' Очень жарко!.';
}

$metcast.= ' Восход солнца сегодня в '.gg("PogodaYandex.SunRise").',';
$metcast.= ' закат в '.gg("PogodaYandex.SunSet").'.';
//$metcast.=' долгота дня '.getGlobal('PogodaYandex.LongTag').'.';    
sg('PogodaYandex.WeatherDnes', $metcast);

//Дата и время последнего обновления
sg("PogodaYandex.update", date("d.m.Y H:i", time()));
// КОНЕЦ ОСНОВНОГО БЛОКА
}

#################################################################
// Функция - добавления "+" к положительной температуре
function getTempSign($temp) {
    $temp = (int) $temp;
    return $temp > 0 ? '+'.$temp : $temp;
}

// Функция - получить направления ветра в МАССИВ
function getWindDirectionY($wind) {
    $wind = (string) $wind;
    $wind_direction = array('s' => '&#8593; ю',
        'n' => '&#8595; с',
        'w' => '&#8594; з',
        'e' => '&#8592; в',
        'sw' => '&#8599; юз',
        'se' => '&#8598; юв',
        'nw' => '&#8600; сз',
        'ne' => '&#8601; св');

    $wind_dirtxt = array('s' => 'южный',
        'n' => 'северный',
        'w' => 'западный',
        'e' => 'восточный',
        'sw' => 'юго-западный',
        'se' => 'юго-восточный',
        'nw' => 'северо-западный',
        'ne' => 'северо-восточный');

    return array($wind_direction[$wind], $wind_dirtxt[$wind]);
}
Аватара пользователя
chelovert
Сообщения: 64
Зарегистрирован: Ср май 08, 2019 2:01 pm
Благодарил (а): 11 раз
Поблагодарили: 28 раз

Re: [Модуль] Погода Яндекс (yandexweather)

Сообщение chelovert » Вт июн 29, 2021 1:29 pm

Написал сегодня модулЁк для рамблер погоды. ссылка на репозиторий. https://github.com/chel0vert/rambler-we ... ree/master Установка ручная

В поле CITY_NAME надо значение "v-moskve" или "v-sankt-peterburge". Эти значения можно получить на сайте рамблера https://weather.rambler.ru/ . Ищем свой город и получаем в адресной строчке нужноезначение
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: [Модуль] Погода Яндекс (yandexweather)

Сообщение nick7zmail » Вт июн 29, 2021 4:27 pm

chelovert писал(а):
Вт июн 29, 2021 1:29 pm
Написал сегодня модулЁк для рамблер погоды. ссылка на репозиторий. https://github.com/chel0vert/rambler-we ... ree/master Установка ручная

В поле CITY_NAME надо значение "v-moskve" или "v-sankt-peterburge". Эти значения можно получить на сайте рамблера https://weather.rambler.ru/ . Ищем свой город и получаем в адресной строчке нужноезначение
Охтыжептыть...рамблер ещё жив? Оо
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
newz20
Сообщения: 172
Зарегистрирован: Пт апр 06, 2018 9:40 am
Благодарил (а): 93 раза
Поблагодарили: 93 раза

Re: [Модуль] Погода Яндекс (yandexweather)

Сообщение newz20 » Вт июн 29, 2021 4:50 pm

chelovert писал(а):
Вт июн 29, 2021 1:29 pm
Написал сегодня модулЁк для рамблер погоды. ссылка на репозиторий. https://github.com/chel0vert/rambler-we ... ree/master Установка ручная

В поле CITY_NAME надо значение "v-moskve" или "v-sankt-peterburge". Эти значения можно получить на сайте рамблера https://weather.rambler.ru/ . Ищем свой город и получаем в адресной строчке нужноезначение
Я конечно только за и хорошо что есть альтернатива, но вы наверное не смотрели, ни чат ни форум. Модуль уже создается. Если есть желание присоединиться к разработке, то с радостью ждем в команде. https://mjdm.ru/forum/viewtopic.php?f=5&t=7470 у нас из ближайших планов, погода на 3 дня и на 10.
Аватара пользователя
chelovert
Сообщения: 64
Зарегистрирован: Ср май 08, 2019 2:01 pm
Благодарил (а): 11 раз
Поблагодарили: 28 раз

Re: [Модуль] Погода Яндекс (yandexweather)

Сообщение chelovert » Вт июн 29, 2021 4:52 pm

да. сорри. не видел модуля...
newz20
Сообщения: 172
Зарегистрирован: Пт апр 06, 2018 9:40 am
Благодарил (а): 93 раза
Поблагодарили: 93 раза

Re: [Модуль] Погода Яндекс (yandexweather)

Сообщение newz20 » Вт июн 29, 2021 4:53 pm

nick7zmail писал(а):
Вт июн 29, 2021 4:27 pm
chelovert писал(а):
Вт июн 29, 2021 1:29 pm
Написал сегодня модулЁк для рамблер погоды. ссылка на репозиторий. https://github.com/chel0vert/rambler-we ... ree/master Установка ручная

В поле CITY_NAME надо значение "v-moskve" или "v-sankt-peterburge". Эти значения можно получить на сайте рамблера https://weather.rambler.ru/ . Ищем свой город и получаем в адресной строчке нужноезначение
Охтыжептыть...рамблер ещё жив? Оо
Сам Рамблер уже практически мертв, из сервисов он все берет сторонее, превратился в новостную ленту больше чем портал. Но у него погода от Яндекса и без ключей. Поэтому он нам очень подошел как донор 😁
newz20
Сообщения: 172
Зарегистрирован: Пт апр 06, 2018 9:40 am
Благодарил (а): 93 раза
Поблагодарили: 93 раза

Re: [Модуль] Погода Яндекс (yandexweather)

Сообщение newz20 » Вт июн 29, 2021 4:57 pm

chelovert писал(а):
Вт июн 29, 2021 4:52 pm
да. сорри. не видел модуля...
Он только в разработке и тестировании. И не надо извиняться, все свободные люди и в праве создавать своё.
Ответить