сбор данных с другого сайта

159
05 февраля 2018, 05:56

Есть вот такой код на php и js:

<script src="js/jquery-3.2.1.min.js"></script>
<?php
echo file_get_contents('https://www.gismeteo.ru/weather-saratov-5032/');
?>
<script>
$(document).ready(function(){
    var wth = $(".tab-weather__value_l").text();
    var str = wth.replace(/\s/g, '');
    var ifminus = str.search( /^(?!-)\D*/ );
    if (ifminus === 0) {
            var plusint = str.replace( /^(?!-)\D*/, "");
            var plusint = plusint.replace( /\,/, ".");
            var plusint = plusint - plusint - plusint;
        console.log(plusint);
    }

    console.log(wth);
    console.log(str);
    console.log(ifminus);
    console.log("WATCH HERE");
    console.log(parseFloat(plusint, 10));
    console.log("WATCH HERE_2");

    if (plusint > 0) {
        console.log("WORKING");
    } else { console.log("UPS");}
});
</script>

<p>Checking</p>

Он выводит всю страницу другого сайта у себя, и там ищет, что нужно, и успешно находит... Вот только отображение всей этой страницы мне не нужно, а ничего умнее чем создать див под него и скрыть - я не придумал. Подскажите, может есть более цивилизованный метод?

Answer 1

Удалось сократить выводимую часть в 1 див, так что по сути, все работает =)

<?php
    $html = file_get_contents('https://www.gismeteo.ru/weather-saratov-5032/');
    $first_step = explode( 'tab-weather__value_l">' , $html );
    $second_step = explode("</div>" , $first_step[1] );
    echo '<div style="display:none" id="cc">'.$second_step[0].'</div>';
?>
<script>
$(document).ready(function(){
    var wth = $("#cc").text();
    var str = wth.replace(/\s/g, '');
    var ifminus = str.search( /^−/ );
    if (ifminus === 0) {
        var plusint = str.replace( /^−/, "");
        var plusint = plusint.replace( /\,/, ".");
        var plusint = plusint - plusint - plusint;
    } else {
        var plusint = str;
        var plusint = plusint.replace( /\,/, ".");
    }
    var rw = parseFloat(plusint, 10);
    if (rw < -15) {
        $("#weather").html("<div style='color:red'>Монтаж запрещен</div>");
    } else { 
        $("#weather").html("<div style='color:green'>Монтаж разрешен</div>");
    }
});
</script>

<div id="weather">Problem Detected</div>
READ ALSO
В чем проблема заключается?

В чем проблема заключается?

В настройках webmoney лежит как показано на скриншоте

171
Как сделать тест Срупе через js

Как сделать тест Срупе через js

Как сделать тест Струпе? То есть мне нужно чтобы выводилось какое то рандомное слово из ограниченного списка рандомного цвета шрифтаНиже...

146
Перегрузка метода в Google Test

Перегрузка метода в Google Test

В моём TestMock классе у меня есть два метода:

208
Как добавит файл манифеста в С++ проект?

Как добавит файл манифеста в С++ проект?

Искал пол дня как это сделать

248