Как мне отсканировать сайт и получить данные внутри div? - PullRequest
0 голосов
/ 26 марта 2010

Как я могу отсканировать экран с помощью cURL и показать данные в определенном разделе?

Ответы [ 4 ]

6 голосов
/ 26 марта 2010

Загрузите страницу с помощью cURL (в документации много примеров ). Затем используйте DOM Parser, например Simple HTML DOM или PHPs DOM , чтобы извлечь значение из элемента div.

0 голосов
/ 10 мая 2010

Возможная альтернатива.

# We will store the web page in a string variable.
var string page

# Read the page into the string variable.
cat "http://www.abczyx.com/path/to/page.ext" > $page

# Output the portion in the third (3rd) instance of "<div...</div>"
stex -r -c "^<div&</div\>^3" $page

Этот код в битрейскрипте. Я использую 3 в качестве образца для извлечения 3-го деления. Если вы хотите извлечь div, в котором есть строка «ABC», используйте синтаксис этой команды.

stex -r -c "^<div&ABC&</div\>^" $page

Посмотрите на этот скрипт http://www.biterscripting.com/helppages/SS_ExtractTable.html. Он показывает, как извлечь элемент (div, table, frame и т. Д.), Когда элементы вложены.

0 голосов
/ 28 марта 2010

После загрузки с помощью cURL используйте XPath , чтобы выбрать div и извлечь содержимое.

0 голосов
/ 26 марта 2010

Получить содержимое сайта, используя запрос cURL GET. На странице руководства curl_exec приведен пример кода .

Используйте регулярное выражение для поиска нужных вам данных. На странице справочника preg_match приведен пример кода, но вам нужно немного прочитать о регулярных выражениях , чтобы создать нужный вам шаблон. Как упомянул Yacoby , о котором я не задумывался, лучшей идеей может быть проверка DOM HTML-страницы с использованием PHP-анализатора Simple XML или DOM.

Вывести информацию, которую вы нашли из регулярного выражения / парсера, в HTML-код вашей страницы (в пределах обязательного div.)

...