используя curl через прокси с php - PullRequest
0 голосов
/ 19 февраля 2012

Любая идея, где мой код идет не так ... Я пытаюсь подключиться через прокси с функцией curl в php ... Я предполагаю, что прокси сработал, потому что я пробовал несколько из этого списка http://hidemyass.com/proxy-list/search-234921но, кажется, не может заставить любого функционировать правильно ...

Мысли?

function my_fetch($url,$user_agent='Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)')
{
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_USERAGENT, $user_agent);
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_setopt ($ch, CURLOPT_REFERER, 'http://www.google.com/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, 1);
curl_setopt($ch, CURLOPT_PROXY, '75.74.244.122:1523');
$data = curl_exec();
curl_close($ch);
return $result;
}

Ответы [ 2 ]

0 голосов
/ 10 ноября 2013

Вы можете попробовать несколько прокси, используя случайный один за другим, используя этот скрипт

Получить случайный прокси

  function get_random_proxy(){
  srand ((double)microtime()*1000000);
  $f_contents = file ("proxy.txt");
  $line = $f_contents[array_rand ($f_contents)];
  return $line;
  }

вызвать функцию скручивания случайным образом используя один прокси

function get_curl_proxy($url){

$proxy_ip = get_random_proxy();
$agent = "Mozilla/5.0 (X11; U; Linux i686; en-US) AppleWebKit/532.4 (KHTML, like Gecko) Chrome/4.0.233.0 Safari/532.4";
$referer = "http://www.google.com/";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, 1);
curl_setopt($ch, CURLOPT_PROXY, $proxy_ip);
curl_setopt($ch, CURLOPT_REFERER, $referer);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_MAXREDIRS, 2);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_USERAGENT, $agent);

$data = curl_exec($ch);
curl_close($ch);

return $data;
}

Для дальнейшего ознакомления см. http://altafphp.blogspot.in/2012/06/using-proxies-with-curl-in-php.html

0 голосов
/ 22 февраля 2012

Не похоже, что используемый вами прокси работает:

jasonfunk@jasonfunk-laptop:$ telnet 75.74.244.122 1523
Trying 75.74.244.122...
telnet: Unable to connect to remote host: Connection refused
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...