2010-07-13 4 views
0

Я новичок в использовании CURL и новичок PHP-кодера. Я хотел бы использовать определенные элементы на веб-странице (которые меняются через AJAX) и вводить их в базу данных, используя CURL. На данный момент я могу написать текстовый файл веб-страницы с использованием CURL, но я не знаю, куда идти дальше.Ввод конкретных данных в базу данных с использованием CURL

ответ

0

Обычно это обрабатывается скребковыми страницами, используя cURL. Если вы последовательно очищаете кучу страниц, я предлагаю использовать семейство функций curl_multi, чтобы ПОЛУЧИТЬ их параллельно. Если вы ищете определенные части страниц, вы можете загрузить документ HTML в SimpleXMLElement и использовать xpath для запроса конкретных данных.

Единственная проблема с этим решением заключается в том, что вы говорите, что вам нужно очистить содержимое AJAX со страницы. cURL взаимодействует только с сервером - он не может запускать клиентский JavaScript. Некоторые приложения AJAX имеют эквивалент серверной части содержимого AJAX, который вы просматриваете (например, http://example.com#test может перевести на http://example.com/test). Если на сайте, с которым вы работаете, нет такого типа сопоставления, вы можете попытаться выяснить URL-адреса, с которых загружается контент AJAX, и скрестить эти URL-адреса напрямую с помощью cURL.

Если вам нужны более продвинутые функции на стороне клиента, вы должны изучить Selenium. Если вы google для «Selenium screen scrape», вы должны увидеть interesting results. Я знаю, что в PHPUnit есть интеграция Selenium, которая может стоить взгляда.

Вот еще один вопрос, касающийся экранирования страниц AJAX: How do you scrape AJAX pages?

Смежные вопросы