Использую задание 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.
Фактические данные собираются из 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>";
Здесь происходит то, что страница создается Javascript. Когда вы говорите, что смотрите на источник, вы на самом деле смотрите на дерево DOM. Если вы посмотрите на источник (command / control-U), вы поймете, что я имею в виду. Чтобы получить данные, у вас есть два варианта.
1) Попробуйте перепроектировать Javascript и посмотреть, откуда он получает данные, которые он использует для распространения сайта.
или же
2) Используйте что-то вроде PhantomJS создать сайт DOM для вас, а затем вы можете сканировать это вместо.