Проблема скручивания при смене прокси Ошибка 7 - PullRequest
0 голосов
/ 04 февраля 2020

Когда я проверяю статистику списком прокси, в первый раз работаю без проблем, но когда я меняю прокси, я получаю эту ошибку cURL error number: 7 cURL error: Не удалось подключиться к 181.119.69.1, это мой код

    for ($i = 0; $i < $item_list_count; $i++) {
    $url  = 'https://www.website.com/?searchterm='.str_replace("@", "%40", $item[0]);
    $proxy = $lines[$cmpt];
    $curl = curl_init(); 
    $cookiejar = 'curl_cookiejar.txt';
    $header[0] = "Accept: text/xml,application/xml,application/xhtml+xml,"; 
    $header[0] .= "text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5"; 
    $header[] = "Cache-Control: max-age=0"; 
    $header[] = "Connection: keep-alive"; 
    $header[] = "Keep-Alive: 300"; 
    $header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7"; 
    $header[] = "Accept-Language: en-us,en;q=0.5"; 
    $header[] = "Pragma: "; //browsers keep this blank. 
    curl_setopt($curl, CURLOPT_URL, trim($url)); 
    curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3'); 
    curl_setopt($curl, CURLOPT_HTTPHEADER, $header); 
    curl_setopt($curl, CURLOPT_REFERER, 'http://www.google.com'); 
    curl_setopt($curl, CURLOPT_ENCODING, 'gzip,deflate'); 
    curl_setopt($curl, CURLOPT_AUTOREFERER, true); 
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($curl, CURLOPT_TIMEOUT, 100); 
    curl_setopt($curl, CURLOPT_HTTPPROXYTUNNEL, 0);
    curl_setopt($curl, CURLOPT_PROXY,  $proxy);
     curl_setopt($curl, CURLOPT_MAXREDIRS, 5);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($curl, CURLOPT_COOKIEJAR,  $cookiejar);
    curl_setopt($curl, CURLOPT_COOKIEFILE, $cookiejar);
    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);

    $response = curl_exec($curl); //execute the curl command 
    $proxyError = false;
    if (!$response) 
    {
        $proxyError=true;
        echo "cURL error number:" .curl_errno($curl)."\n";
        echo "cURL error:" . curl_error($curl)."\n";
        if(curl_errno($curl)==7){
            if(curl_errno($curl)==7){
                echo "Bad Proxy $proxy Trying to find another one \n";
            }
        }
        $cmpt++;
    }}
...