zoukankan      html  css  js  c++  java
  • 利用php的curl扩展进行模拟浏览器访问网页

    我们一般要抓取一个网站的静态页面来完成我们的需求,其实在这里面有很多种方式可以完成,

    php内置函数file_get_contents();file();readfile();都可以进行网页抓取,但是这种方式毕竟是有很大

    局限性的,例如我们要访问一个需要登录的网站,需要登录验证信息,这是后php内置函数就显得疲软了

    所以我们发现了一个php的扩展类curl来帮助我们完成这种事情,curl是php的扩展之一我们只需要安装它

    并且在php.ini文件中打开他的扩展就可以使用了,这里我们不多赘述,其实curl使用起来还是蛮简单的下面

    我们给出一个简单的demo:

    <?php
    $url = "www.baidu.com";//以百度为例
    $data = array();
    $curl = curl_init();//初始化一个curl会话;

    curl_setopt($curl,CURLOPT_URL,$url);//指定访问的url

    curl_setopt($curl,CURLOPT_POST,$data);//post请求的参数,

    curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);//获取的信息以文件流的方式返回

    $data = curl_exec($curl);//执行curl;
    var_dump($data);
    curl_close($curl); // 关闭CURL会话

    ?>

    这就完成了一次curl会话,大家感觉是不是没什么特别之处?,别急,我们来看看他的精髓之处就是可以传参数,当然什么cookies呀!验证的这些东西就可以通过这个来完成,

    curl参数很多这里就不一一介绍了;

    另外推荐大家去看一看snoopy抓取类也是不错的一个工具,simple_html_dom文档解析也很不错。

  • 相关阅读:
    蛙蛙请教:把一段c算法代码转换成c#代码。
    和病毒折腾了两天
    WawaKM预览版发布,欢迎大家测试反馈哦
    (转)深度分析如何在Hadoop中控制Map的数量
    [转载]JAVA操作符
    (转)Hive Index
    Hadoop++:Hadoop的局部性能改良
    深入了解Hive Index具体实现
    Linux echo命令
    (转)带索引的mapReduce
  • 原文地址:https://www.cnblogs.com/sunke/p/5649949.html
Copyright © 2011-2022 走看看