PHP. Curl. Прокси

Если вам необходимо спарсить какую-то информацию, например, список товаров, а сайт-донор всячески препятствует вам сделать это, на помощь приходят прокси сервера. Прокси сервер позволяет делать запросы к сайту, но под своим именем. То есть, если у вас есть список рабочих прокси-серверов, вы сможете сымитировать реальный траффик и вас не забанят. Ниже приведен код для работы curl через прокси сервер:

function get($url, $proxy)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.1) Gecko/2008070208');
curl_setopt($ch, CURLOPT_PROXY, "$proxy");
$ss=curl_exec($ch);
curl_close($ch);
return $ss;
}

$prox = '62.159.143.172:80';
$content = get('http://totoiono.enkidu.ru/', $prox);
echo $content;

Список рабочих прокси серверов можно получить здесь, проверить на работоспособность список произвольных прокси серверов можно здесь.

Интересное

Проверка сайта на вирусы
Если пользоваться привычной терминологией, то web вирусы не являются вирусами в традиционном...
Git и Bitbucket
Git – это распределенная система контроля версий. Пожалуй, на этом теория заканчивается, так как...
Отзыв о FirstVDS
При покупке хостинга у FirstVDS мне предложили скидку за годный отзыв в блоге или на форуме....
Project Glass — Очки будущего от Google
Компания Google представила суперсовременные «очки дополненной реальности» или Project Glass. Впрочем,...

Комментарии

  • script1
    10.06.2010 в 18:22

    А не подскажете как сюда прикрутить файл с проксями, (proxy.txt) вместо одного???

    ответить
  • Александр
    18.06.2010 в 06:22

    Можно использовать цикл и перебирать все прокси подряд:

    $proxy = array ();
    $file = 'proxy.txt';
    if (is_file ($file))
    {
    $handle = fopen ($file, «r»);
    while (($data = fgetcsv ($handle, 1000, ","))!== FALSE)
    {
    $proxy[] = $data[0];
    }
    }

    foreach ($proxy as $prox)
    { $content = get ('http://totoiono.enkidu.ru/', $prox);
    echo $content;
    }

    А можно и рандомно извлекать прокси. Все зависит от целей скрипта.

    ответить
  • Константин
    01.07.2010 в 15:00
    Ну и как, уже пробовали свой скрипт?
    Можно целую прогу написать, расбрасывать по серверам и собирать МЁД.
    Недавно нашёл бесплатный хостинг с кроном и курлом, могу заделиться, пишите в мэйл.
    ответить
  • Михаил
    13.08.2011 в 02:22
    Большое спасибо!
    Жалко, что в функции нету авторизации для самих проксей
    ответить
    • Дмитрий Макаров
      07.02.2013 в 23:36
      Как это нет?
      curl_setopt ($ch, CURLOPT_PROXYUSERPWD,'user: pass');
      ответить
  • Polomans
    05.12.2011 в 09:56

    Большое спасибо за скрипт! А никто не знает где брать файлик со списком проксей?

    ответить
  • e2epro.com
    22.01.2012 в 16:44

    Статья была полезна!!! Спасибо

    ответить

Чтобы оставлять комментарии, авторизируйтесь

Войти через OpenID

рейтинг0+-
Популярные
Точки входа
Широкий выбор серверов для различных целей. Стабильные быстрые прокси по выгодной цене только тут.
Наверх