• 爬虫 | php封装 | file_get_contents


    今天无聊,用php封装了一套比较简单的http请求类
    细节方面可以再优化

    class Creeper
    {
    	public $url;
    	public $header;
    	public $text;
    	public $responseHeader;
    	public function __construct($url){
    		$this->url = $url;
    		$this->header = "Accept-language: *
    " .
    	    	"User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36
    "
    	    	;
    	}
    	public function get(){
    		$a = array(
    			'http' => array(
    				'method'=> "GET",
    		    	'header'=> $this->header
      			),
      			'ssl' => array(    # 取消ssl验证
      				"verify_peer" => false,
      				"verify_peer_name" => false
      			)
    		);
    		$context = stream_context_create($a);     // 创建上下文
    		$url = $this->url;
    		$this->text = file_get_contents($url, false, $context);    // 进行访问
    		$this->responseHeader = $http_response_header;
    		//var_dump($http_response_header);
    	}
    	public function post($data){
    		$postdata = urlencode($data);
    		$a = array(
    			'http'=>array(
    				'method'=> "POST",
    		    	'header'=> $this->header.
    		    		"Content-Type: application/x-www-urlencoded
    ",
    		    	'content' => $postdata
      			)
    		);
    		$context = stream_context_create($a);     // 创建上下文
    		$url = $this->url;
    		$this->text = file_get_contents($url, false, $context);    // 进行访问
    		$this->responseHeader = $http_response_header;
    		//var_dump($http_response_header);
    	}
    }
    

    基本上使用起来也还是挺方便的:

    $creeper = new Creeper('http://www.xxxxx.com');
    $creeper->get();
    preg_match_all("/href="(.*?)" target=/", $creeper->text, $links);
    $links = $links[1];
    

    over.

  • 相关阅读:
    精选PSD素材下载周刊【Goodfav PSD 20130720】
    25个吸引眼球的广告设计
    25个让人无法抗拒的HTML5网站设计实例
    10个非常有用的网页设计工具
    为网页设计师准备的30个使用的HTML5框架
    ElasticSearch
    Dism命令实操
    Bash Shell
    Lua语言学习
    开发命令
  • 原文地址:https://www.cnblogs.com/Mz1-rc/p/14477125.html
Copyright © 2020-2023  润新知