- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Здравствуйте.
Подскажите, пожалуйста, как реализовать в парсере на CURL то, чтобы он парсил через прокси? Нужно, чтобы парсилось по списку прокси: новый запрос - новый прокси по порядку ( например текстовый файл со списком прокси ). Тоесть нужно при каждом запросе парсера ставить новый прокси из списка прокси по порядку. Если список прокси в текстовом файле закончился , то начинаем опять с первого прокси и так по кругу по порядку сверху вниз из списка.
Вот код:
public function check($url)
{
$ch = curl_init("тут url откуда парсим");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$result = curl_exec($ch);
if(curl_errno($ch) != 0)
die("curl_errno(".curl_errno($ch)."), curl_error(".curl_error($ch).")");
curl_close($ch);
return substr($result, 9);
}
Руками, чем ещё то?
Или за вас код написать надо что-ли?
Или за вас код написать надо что-ли?
Желательно с кодом помочь :)
public function check($url)
{
$proxy = 'Адрес прокси';
$ch = curl_init("тут url откуда парсим");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
curl_setopt($ch, CURLOPT_PROXY, $proxy);
$result = curl_exec($ch);
if(curl_errno($ch) != 0)
die("curl_errno(".curl_errno($ch)."), curl_error(".curl_error($ch).")");
curl_close($ch);
return substr($result, 9);
}
public function check($url)
{
$proxy = 'Адрес прокси';
$ch = curl_init("тут url откуда парсим");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
curl_setopt($ch, CURLOPT_PROXY, $proxy);
$result = curl_exec($ch);
if(curl_errno($ch) != 0)
die("curl_errno(".curl_errno($ch)."), curl_error(".curl_error($ch).")");
curl_close($ch);
return substr($result, 9);
}
Спасибо :) Надеюсь будет работать - попробую :)
А если рандомно брать из списка, то так
public function check($url)
{
$proxy = file('proxy.dat');
shuffle($proxy);
$ch = curl_init("тут url откуда парсим");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
curl_setopt($ch, CURLOPT_PROXY, $proxy[0]);
$result = curl_exec($ch);
if(curl_errno($ch) != 0)
die("curl_errno(".curl_errno($ch)."), curl_error(".curl_error($ch).")");
curl_close($ch);
return substr($result, 9);
}
А если рандомно брать из списка, то так
public function check($url)
{
$proxy = file('proxy.dat');
shuffle($proxy);
$ch = curl_init("тут url откуда парсим");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
curl_setopt($ch, CURLOPT_PROXY, $proxy[0]);
$result = curl_exec($ch);
if(curl_errno($ch) != 0)
die("curl_errno(".curl_errno($ch)."), curl_error(".curl_error($ch).")");
curl_close($ch);
return substr($result, 9);
}
Спасибо большое Вам!
Пожалуйста
А если рандомно брать из списка, то так
public function check($url)
{
$proxy = file('proxy.dat');
shuffle($proxy);
$ch = curl_init("тут url откуда парсим");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
curl_setopt($ch, CURLOPT_PROXY, $proxy[0]);
$result = curl_exec($ch);
if(curl_errno($ch) != 0)
die("curl_errno(".curl_errno($ch)."), curl_error(".curl_error($ch).")");
curl_close($ch);
return substr($result, 9);
}
proxy.dat - это адрес списка прокси. Немного не понял :)
И ещё: как лучше попорядку или рандомно прокси брать? Наверное зависит от количества прокси в списке?
proxy.dat - это адрес списка прокси. Немного не понял :)
И ещё: как лучше попорядку или рандомно прокси брать? Наверное зависит от количества прокси в списке?
В .dat файле список прокси.
В .dat файле список прокси.
Извините, пожалуйста, но где прописывать адрес этого .dat файла в коде?
---------- Добавлено 07.03.2013 в 14:34 ----------
Тоесть, где на сервере должен находиться файл proxy.dat?
---------- Добавлено 07.03.2013 в 15:06 ----------
Я создал файл proxy.dat со списком прокси ( файл сделал из .txt файла ) - каждый прокси с новой строки.
Есть код представленный пользователем TitanIKS - прокси с рандомным выводом:
public function check($url)
{
$proxy = file('proxy.dat');
shuffle($proxy);
$ch = curl_init("тут url откуда парсим");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
curl_setopt($ch, CURLOPT_PROXY, $proxy[0]);
$result = curl_exec($ch);
if(curl_errno($ch) != 0)
die("curl_errno(".curl_errno($ch)."), curl_error(".curl_error($ch).")");
curl_close($ch);
return substr($result, 9);
}
Вопрос: куда ложить файл proxy.dat? Пожалуйста, подскажите!