PHP5. Php curl парсер
: Импорт контента :: cURL
cURL
www.curl.haxx.se↑
cURL (сокр. от client URL) – разработанная в 1998 году Дэниэлом Стейнбергом↑ кроссплатформенная утилита для автоматизации передачи удалённых файлов по различным протоколам (http, https, ftp, gopher, telnet, dict, file и ldap).
Для встраивания cURL в различные языки программирования разработана библиотека libcurl. Начиная с версии 4.0.2 библиотека по умолчанию включена в конфигурацию PHP.
Помимо поддержки основных сетевых протоколов и сертификатов, cURL обеспечивает туннелирование через http-прокси, работает с http-куками, успешно взаимодействует с разнообразными системами аутентификации, возобновляет докачку в случае обрыва. В общем, большая умница и красавица :)
Функции cURL:
resource curl_init ([string url])
Инициализация cURL-сессии. При этом функция возвратит cURL-дескриптор, который затем используется при вызовах функции curl_setopt(), curl_exec() и curl_close(). Необязательный параметр url устанавливает опцию CURLOPT_URL, обозначающий адрес, с которым будут производиться дальнейшие операции. Если это параметр не будет установлен, то его в дальнейшем можно определить с помощью функции curl_setopt().
bool curl_setopt (resource ch, string option, mixed value)
Предварительная установка опции для cURL-сессии. Обычно функция вызывается несколько раз, устанавливая различные параметры для сеанса. Параметр ch является идентификатором сессии (cURL-дескриптор), установленным с помощью функции curl_init() . Параметр option является названием опции которую требуется установить, а value – её значением.
bool curl_exec (resource ch)
Запуск cURL-сессии на выполнение. При этом будут использованы параметры, установленные с помощью вызовов функции curl_setopt(). ch - cURL-дескриптор текущей сессии, полученный в результате вызова функции curl_init(). В случае неудачи, функция возвращает false.
void curl_close(resource ch)
Закрытие cURL-сессии. Дескриптор ch при этом уничтожается, ресурсы выделенные на сессию освобождаются.
Надобно отметить, функции здесь не все. Перечислены только те, которые обязательно участвуют в любой cURL-сессии. Кроме этих функций существует ещё около десятка, которые позволяют использовать различные возможности cURL.
Пример:
parsing.valemak.com
localport | int | CURLOPT_LOCALPORT | Локальный порт. |
low_speed_limit | int | CURLOPT_LOW_SPEED_LIMIT | Минимальная скорость передачи (байт/сек). |
low_speed_time | int | Максимальное время, когда скорость передачи может быть меньше low_speed_limit. | |
maxconnects | int | CURLOPT_MAXCONNECTS | Максимальное количество постоянных соединений в рамках сессии. |
maxfilesize | int | CURLOPT_MAXFILESIZE | Максимальный размер ответа в байтах. |
maxredirs | int | CURLOPT_MAXREDIRS | Максимальное число редиректов. |
nobody | int | CURLOPT_NOBODY | Передать запрос методом HEAD. |
password | string | CURLOPT_PASSWORD | Пароль. |
port | int | CURLOPT_PORT | Порт. |
post | int | CURLOPT_POST | Передать запрос методом POST. |
postfields | string, file | CURLOPT_POSTFIELDS | Тело post-запроса. |
postredir | int | CURLOPT_POSTREDIR | См. документацию по libcurl. |
proxy | string | CURLOPT_PROXY | Адрес прокси-сервера. |
proxyauth | int | CURLOPT_PROXYAUTH | Тип авторизации (см. параметр httpauth). |
proxyport | int | CURLOPT_PROXYPORT | Порт прокси-сервера. |
proxytype | int | CURLOPT_PROXYTYPE | Тип прокси (CURLPROXY_HTTP = 0, CURLPROXY_HTTP_1_0 = 1, CURLPROXY_SOCKS4 = 4, CURLPROXY_SOCKS5 = 5, CURLPROXY_SOCKS4A = 6, CURLPROXY_SOCKS5_HOSTNAME = 7). |
proxyuserpwd | string | CURLOPT_PROXYUSERPWD | Имя пользователя и пароль для прокси. |
range | string | CURLOPT_RANGE | Вернуть части ответа, находящиеся в указанном диапазоне. |
referer | string | CURLOPT_REFERER | Заголовок Referer. |
ssl_cipher_list | string | CURLOPT_SSL_CIPHER_LIST | См. документацию по libcurl. |
ssl_sessionid_cache | int | CURLOPT_SSL_SESSIONID_CACHE | Включить SSL session-ID кеш. |
ssl_verifyhost | int | CURLOPT_SSL_VERIFYHOST | Проверять сертификат хоста. |
ssl_verifypeer | int | CURLOPT_SSL_VERIFYPEER | Проверять сертификат пира. |
sslcert | string | CURLOPT_SSLCERT | Имя файла с SSL-сертификатом. |
sslcerttype | string | CURLOPT_SSLCERTTYPE | Тип ssl-сертификата. |
sslengine | string | CURLOPT_SSLENGINE | См. документацию по libcurl. |
sslengine_default | string | См. документацию по libcurl. | |
sslkey | string | CURLOPT_SSLKEY | Имя файла с SSL-ключом. |
sslkeytype | string | CURLOPT_SSLKEYTYPE | Тип ssl-ключа. |
stderr | string | CURLOPT_STDERR | Имя файла в который будет переадресован вывод из stderr. |
timeout | int | CURLOPT_TIMEOUT | Таймаут с секундах. |
timeout_ms | int | Таймаутах в миллисекундах. | |
unrestricted_auth | int | CURLOPT_UNRESTRICTED_AUTH | Повторно отсылать параметры http-авторизации, если при редиректе сменилось имя сервера. |
url | string | CURLOPT_URL | URL-адрес. |
useragent | string | CURLOPT_USERAGENT | Заголовок User-Agent. |
username | string | CURLOPT_USERNAME | Имя пользователя. |
userpwd | | CURLOPT_USERPWD | Имя пользователя и пароль. |
verbose | int | CURLOPT_VERBOSE | Выводить подробную информацию в процессе обработки запроса в stderr. |
php5.kiev.ua
Парсер на php Настройки cURL
Вопрос: Парсер на php. Настройки cURL
Здравствуйте! Разрабатываю парсер на php, идея в том, чтобы сделать его более менее универсальным. Т.е. через конфиг передавать настройки по типу: где ищем, что ищем и т.д., а сам процесс парсинга уже будет работать по всем этим настройкам. Возник вопрос по поводу вытаскивания HTML с помощью cURL. Какие могут потребоваться основные настройки. Пока в голову ничего кромеPHP | ||
|
PHP | ||
|
forundex.ru