@serega-kn
Студент

Насколько рациональна реализация парсинга xml погоды Яндекса?

Задача была в парсинге погоды с xml Яндекса.
После кучи проб и ошибок пришел к такому решению. Хочу узнать недостатки данного решения.

JavaScript-файл
$(document).ready(function () {
    $.get( "/temp/js/weather.php", function( data ) {
	  
		var temperature = data.temp[0];
		
		if (temperature>0) {
			temperature='+'+temperature;
		}
		
		$('.weather a').text(temperature);
		
	}, "json" );
});


PHP-файл
<?php
    $data_file="http://export.yandex.ru/weather-ng/forecasts/37053.xml"; // адрес xml файла 
$xml = simplexml_load_file($data_file); // раскладываем xml на массив
    $temp=$xml->fact->temperature;
    echo json_encode( array("temp"=>$temp));
?>
  • Вопрос задан
  • 1578 просмотров
Решения вопроса 1
kompi
@kompi
nullstack devoops
Как вариант, взять нормальный сервис, который разрешает кросс-доменные запросы и отдаёт сразу в json, например, openweathermap.org.
Простенький пример.
Тогда и не нужен будет php, только из-за того, что яндекс погода не хочет/не может кросс-доменные запросы.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@asdz
Правильно делаете, т.к. аякс запрос к яндексу не будет выполнятся. Только нужно сделать парсинг данных на сервере по крону, а аяксом забирать уже рапарсенные кэшированные данные.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы