php curl模拟ip访问和随机ua

4 阅读1分钟
  1. 模拟ip

先随机出来ip,代码如下:

$ip_long = array(

    array('607649792', '608174079'), //36.56.0.0-36.63.255.255

    array('1038614528', '1039007743'), //61.232.0.0-61.237.255.255

    array('1783627776', '1784676351'), //106.80.0.0-106.95.255.255

    array('2035023872', '2035154943'), //121.76.0.0-121.77.255.255

    array('2078801920', '2079064063'), //123.232.0.0-123.235.255.255

    array('-1950089216', '-1948778497'), //139.196.0.0-139.215.255.255

    array('-1425539072', '-1425014785'), //171.8.0.0-171.15.255.255

    array('-1236271104', '-1235419137'), //182.80.0.0-182.92.255.255

    array('-770113536', '-768606209'), //210.25.0.0-210.47.255.255

    array('-569376768', '-564133889'), //222.16.0.0-222.95.255.255

);

ip=long2ip(mtrand(ip=long2ip(mt_rand(ip_long[randkey][0],rand_key][0], ip_long[$rand_key][1]));

请求传入随机ip

header=array(CLIENTIP:.header = array('CLIENT-IP:'.ip,'X-FORWARDED-FOR:'.$ip);

 params[CURLOPTHTTPHEADER]=params[CURLOPT_HTTPHEADER] = header;

curl_setopt_array(ch,ch, params);

2.随机ua

先做一个ua数组,可以查看不同的浏览器去获取真实的ua(或者ua生成工具生成)

function getUa(){

return [

    'pc' => [

        "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36",

        "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36",

        "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36",

        "MMozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36",

        "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:98.0) Gecko/20100101 Firefox/98.0",

        "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:97.0) Gecko/20100101 Firefox/97.0",

        "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:98.0) Gecko/20100101 Firefox/98.0",

        "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:97.0) Gecko/20100101 Firefox/97.0",

        "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36",

        "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36",

        "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.2 Safari/605.1.15",

        "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.1 Safari/605.1.15",

        "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36 Edg/97.0.1072.62",

        "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36 Edg/96.0.1054.62",

        "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36 Edg/97.0.1072.62",

        "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36 Edg/96.0.1054.62",

        "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 YaBrowser/22.2.3.878 Yowser/2.5 Safari/537.36",

        "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 YaBrowser/22.1.3.344 Yowser/2.5 Safari/537.36",

        "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 YaBrowser/22.2.3.878 Yowser/2.5 Safari/537.36",

        "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 YaBrowser/22.1.3.344 Yowser/2.5 Safari/537.36",

        "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 YaBrowser/22.2.3.878 Yowser/2.5 Safari/537.36",

        "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 YaBrowser/22.1.3.344 Yowser/2.5 Safari/537.36",

         "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 YaBrowser/22.2.3.878 Yowser/2.5 Safari/537.36 Vivaldi/5.1",

          "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 YaBrowser/22.1.3.344 Yowser/2.5 Safari/537.36 Vivaldi/5.1",

           "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 YaBrowser/22.2.3.878 Yowser/2.5 Safari/537.36 Vivaldi/5.1",

            "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 YaBrowser/22.1.3.344 Yowser/2.5 Safari/537.36 Vivaldi/5.1",

        "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 YaBrowser/22.2.3.878 Yowser/2.5 Safari/537.36 Vivaldi/5.1",

       

    ],

   

];

}

获取随机ua

$ua = getua();

uaRandNum=rand(0,(count(uaRandNum = rand(0,(count(ua['pc'])-1));

传入ua

header=array("UserAgent:".header = array("User-Agent: ".ua['pc'][$uaRandNum]);

 params[CURLOPTHTTPHEADER]=params[CURLOPT_HTTPHEADER] = header;

curl_setopt_array(ch,ch, params);