Используйте PHP для разбора aspx - PullRequest
0 голосов
/ 12 декабря 2011

Давайте посмотрим на эту страницу http://bet.hkjc.com/football/default.aspx?ci=en-US

На этой странице, если я нажму на любую ссылку, URL-адрес будет таким же (без изменений).
Итак, если я хочу проанализировать/ просмотреть исходный код, HTML не то, что я хочу.
Затем, как получить реальный URL и просмотреть правильный исходный код, чтобы я мог разобрать страницу?

Ответы [ 3 ]

3 голосов
/ 12 декабря 2011

Короткий ответ: вы этого не делаете. ASPX, так же как PHP обрабатывается на сервере и никогда не отправляется посетителю, поэтому вы не получите исходный код.


Страница содержит контент в iFrames. Вы можете получить контент, следуя URL в iFrames.

На этой конкретной веб-странице весь отображаемый HTML создается с помощью javascript, который используется для преобразования данных в массив, который можно найти в исходном файле iFrame (см., Например, http://bet.hkjc.com/football/index.aspx?lang=ch).

Предполагая, что вас интересуют только данные, а не детали форматирования, все, что вам нужно сделать, это выяснить, как организован массив, и просто импортировать массив. Не нужно вообще разбирать HTML.

Теперь реальный вопрос заключается в том, имеете ли вы право на использование контента. Он защищен авторским правом по умолчанию, поэтому, если у вас нет явного разрешения, вы должны подумать, подпадает ли ваше использование этого контента под условия добросовестного использования. Если вы планируете размещать контент на своем веб-сайте, это определенно не является «добросовестным использованием», и вы не имеете права делать это.

2 голосов
/ 12 декабря 2011

Похоже, что страница использует Javascript для загрузки нового контента.Вот почему URL не меняется.Если вы узнаете, откуда загружается контент, вы также можете получить его оттуда.

Используйте Firebug и просмотрите вкладку сети, чтобы найти правильный URL.

0 голосов
/ 06 июня 2015

Вам необходимо использовать комбинацию мониторинга DOM (например, через firebug) и мониторинга HTTP-запросов (например, с помощью плагина «Live HTTP Headers»). Это позволит вам отслеживать трафик, генерируемый между клиентским javascript и самим сервером, как с помощью вызовов в стиле AJAX, так и инициируемых пользователем вызовов (отправка форм и т. Д.)

ASPX поддерживает сессии, используя несколько техник, которые вам нужно будет эмулировать с помощью вашего php-кода и curl или аналогичного. Это действительно может быть сложно.

Также обратите внимание, что вам может потребоваться внимательно следить за заголовком HTTP - в зависимости от того, как настроен сервер, он может отклонить ваш запрос оптом, если он не совпадает точно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...