很多站长朋友们都不太清楚phpagent模式,今天小编就来给大家整理phpagent模式,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php.ini中的user_agent是什么意思?有什么作用? 2、 如何用php伪造浏览器ua? 3、 在PHP中如何模拟HTTP_USER_AGENT php.ini中的user_agent是什么意思?有什么作用?而是你服务器上的程序去访问其他网络页面时的USER_AGENT。
别人网站有些为了防止非浏览器的访问,防止被采集,就会做浏览器检测,检测user_agent.
如果你不伪装,不设就采集不到了。
通常的访问是浏览器->网站,网站获得的是你的浏览器信息。
而你如果用些fopen,file_get_contents,socket之类的访问别人网站就是
对方的网站如果分析user_agent,发现是php,可能禁止你获取。
这时候你可以修改user_agent来伪造成浏览器请求。
如何用php伪造浏览器ua?file_get_contents 和 curl 这俩强悍的函数,在远程抓取时候相当有用处。不过一些网站会根据来访ip是否携带user_agent来判断是正常的浏览器客户端还是机器。所以,我们的任务就是给他们伪造user_agent。
file_get_contents伪造user_agent 方法如下:
ini_set('user_agent','Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727;)');
curl伪造user_agent的方法:
curl_setopt($c, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727;)');
附带上curl的完整函数方法:
function curl_get_file_contents($URL)
{
$c = curl_init();
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
//curl_setopt($c, CURLOPT_HEADER, 1);//输出远程服务器的header信息
curl_setopt($c, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727;)');
curl_setopt($c, CURLOPT_URL, $URL);
$contents = curl_exec($c);
curl_close($c);
if ($contents) {return $contents;}
else {return FALSE;}
}
这样就可以抓取了,user_agent是可以自己修改的。
在PHP中如何模拟HTTP_USER_AGENT在curl里可以设置UA
<?php
//client
$ch = curl_init();
curl_setopt_array($ch,
array(
CURLOPT_URL => '',
CURLOPT_USERAGENT => "YeRenChai_v1.0",
CURLOPT_RETURNTRANSFER => True,
CURLOPT_FOLLOWLOCATION => True,
)
);
$response = curl_exec($ch);
if(!$response) exit(curl_error($ch));
var_dump($response);
?>
<?php //server
echo $_SERVER['HTTP_USER_AGENT'];
?>
关于phpagent模式的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。