• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

php根据网址获取标题和描述

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
class snoopy {
	
	private $pattern_array=array(
	'title'=>'/<title>(.*)<\/title>/i',
	'description'=>'/<meta +name="[d|D]escription" +content="(.*)" +\/>/',
	'charset'=>'/charset=\"?([\w-]+)\"?/i',
	);
	
	
	public $url;
	
	public $target_code="utf-8"; //目标编码
	
	public $user_agent='Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.110 Safari/537.36'; //模拟浏览器头部数据
	
	function __construct($url)
	{
			$this->url=$url;
			
	}
	
	public function set_pattern($key,$val)
	{
		if(isset($this->pattern_array[$key])){return false;}
		$this->pattern_array[$key]=$val;
	} //只能够添加规则,不能更改原有的规则
	
	
	
	function get_pege_content($pattern_key)
	{
		
		
		if($pattern_key=='')
		{
			return false;	
		}
	

		
		$curl=curl_init();
		// 设置你需要抓取的URL
	
		curl_setopt($curl, CURLOPT_URL, $this->url);

		// 设置header
		curl_setopt($curl, CURLOPT_HEADER, 0);
		
		// 设置cURL 参数,要求结果保存到字符串中还是输出到屏幕上。
		curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
		
		curl_setopt($curl, CURLOPT_USERAGENT, $this->user_agent);

		
		// 运行cURL,请求网页
		$data = curl_exec($curl);
		
		if($data==false){return false;} 
		
		preg_match($this->pattern_array['charset'],$data,$reg_charset); //获取网页编码

		$page_charset=$reg_charset[1];
		
		$charset==$this->target_code || $data=mb_convert_encoding($data,$this->target_code,$page_charset); //如果不符合你设置的编码,进行转码
		
		preg_match($this->pattern_array[$pattern_key],$data,$content); 
		
		// 关闭URL请求
		curl_close($curl);
		
		return  $content[1];
	}
}

	 $snoopy=new snoopy("http://www.qq.com");
	
	 $title=$snoopy->get_pege_content('title');
		
	 print_r($title);
	 

  


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap