HTML-источник не похож на вывод

Использую задание Cron (скрипт Php) для извлечения результатов лото в день розыгрыша из:

http://www.millipiyango.gov.tr/sonuclar/_cs_sayisal.php

скрипт, который я использую, читает файл, разбивая его на строки, чтобы найти числа:
как показано ниже:

$rfile = "http://www.millipiyango.gov.tr/sonuclar/_cs_sayisal.php";
$lines = file($rfile);

foreach ($lines as $line_num => $line) {
echo "Line #<b>{$line_num}</b> : " .htmlspecialchars($line) . "<br />\n";
}

Сюрприз в том, что вывод страницы (которую вы видите онлайн) не похож на источник (когда PHP читает файл) !!

Я попробовал «Выделить все» мышью, и, прочитав «View Selection Source {Firefox}), все заработало.

Но мне нужно, чтобы это сделал Крон Иов.

Как я могу прочитать источник? кажется, что код скрыт с помощью jquery.

0

Решение

Фактические данные собираются из http://www.millipiyango.gov.tr/sonuclar/cekilisler/sayisal/20141115.json который выглядит в формате [год] [месяц] [день] .json

Ты можешь использовать json_decode в php, чтобы получить массив со значениями, которые вы затем можете использовать, чтобы делать все, что вы хотите.

Если вы хотите увидеть все доступные данные, вы можете сделать следующее:

<?php
$content = file_get_contents("http://www.millipiyango.gov.tr/sonuclar/cekilisler/sayisal/20141115.json");
$json = json_decode($content);
echo "<pre>";
var_dump($json);
echo "</pre>";
2

Другие решения

Здесь происходит то, что страница создается Javascript. Когда вы говорите, что смотрите на источник, вы на самом деле смотрите на дерево DOM. Если вы посмотрите на источник (command / control-U), вы поймете, что я имею в виду. Чтобы получить данные, у вас есть два варианта.

1) Попробуйте перепроектировать Javascript и посмотреть, откуда он получает данные, которые он использует для распространения сайта.

или же

2) Используйте что-то вроде PhantomJS создать сайт DOM для вас, а затем вы можете сканировать это вместо.

1

По вопросам рекламы [email protected]