php 网页内容抓取(这里收集了3种利用php获得网页源代码抓取网页内容的方法)

优采云 发布时间: 2021-09-10 20:08

  php 网页内容抓取(这里收集了3种利用php获得网页源代码抓取网页内容的方法)

  这里汇总了3种利用php获取网页源码抓取网页内容的方法,大家可以根据实际需要选择。 1、使用file_get_contents获取网页的源代码是最常用的方法。它只需要两行代码,非常简单方便。参考代码:

  

    $fh= file_get_contents('https://www.itbiancheng.com/');

    echo $fh;

  2、使用fopen获取网页源代码。这个方法很多人用,但是代码有点多。参考代码:

  

    $fh = fopen('https://www.itbiancheng.com/', 'r');

    if($fh){

        while(!feof($fh)) {

            echo fgets($fh);

        }

    }

  3、使用 curl 获取网页源代码。使用curl获取网页源代码的做法,往往被要求较高的人采用。 ENCODING 代码的使用,USERAGENT 的使用等等。参考代码一:

  

    $ch = curl_init();// 创建一个新cURL资源

    curl_setopt($ch, CURLOPT_URL, "https://www.itbiancheng.com/");// 设置URL和相应的选项

    curl_setopt($ch, CURLOPT_HEADER, false);

    $data = curl_exec($ch);// 抓取URL并把它传递给浏览器

    echo $data;//输入结果

    curl_close($ch);//关闭cURL资源,并且释放系统资源

  参考代码二:

  

    $szUrl = "https://www.itbiancheng.com/";

    $UserAgent = 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506; .NET CLR 3.5.21022; .NET CLR 1.0.3705; .NET CLR 1.1.4322)';

    $curl = curl_init();

    curl_setopt($curl, CURLOPT_URL, $szUrl);

    curl_setopt($curl, CURLOPT_HEADER, 0);  //0表示不输出Header,1表示输出

    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);

    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);

    curl_setopt($curl, CURLOPT_ENCODING, '');

    curl_setopt($curl, CURLOPT_USERAGENT, $UserAgent);

    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);

    $data = curl_exec($curl);

    echo $data;

    //echo curl_errno($curl); //返回0时表示程序执行成功 如何从curl_errno返回值获取错误信息

    exit();

  上例中用到了几个curl_setopt()参数定义,如HEADER、ENCODING、USERAGENT等,更多参数和用法可以参考这里。需要注意的是,在使用curl_init()之前,需要对php.ini进行安全设置,否则函数无法执行

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线