由于经常使用php curl 抓取页面的内容,在此mark 平时自己封装的 curl函数,(其实 现在也开始用 Python 来爬了~  ^-^)

/*** 封装curl方法* @author FredGui* @param string $url 必选  接口地址* @param string $post 可选  如果是post访问填写post参数数组* @param int $timeout 可选  超时时间* @param string $cookie* @param int $decode* @return mixed|null*/
function curlHtml($url, $post = '', $timeout = 30, $cookie = '', $decode = 1){$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_HEADER, 0);if ($post) {curl_setopt($ch, CURLOPT_POST, 1);curl_setopt($ch, CURLOPT_POSTFIELDS, $post);}curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1);curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);if ($cookie) {curl_setopt($ch, CURLOPT_COOKIE, $cookie);}$data = curl_exec($ch);$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);if ($httpCode == '200') {if ($decode == 1 && !is_null(json_decode($data))) {$data = json_decode($data, true);}} else {$data = NULL;}curl_close($ch);return $data;
}$html = curlHtml('http://www.baidu.com');
echo '<pre>';
//var_dump($html);
var_dump(strip_tags($html));exit;

 把 页面内的 html标签去掉了:如下(网页的所有内容)

 本文地址:http://www.cnblogs.com/guixiaoming/p/6424160.html

转载于:https://www.cnblogs.com/guixiaoming/p/6424160.html

好用的 curl 抓取 页面的封装函数相关推荐

  1. curl抓取页面时遇到重定向的解决方法(转)

    用php的curl抓取网页遇到了问题,为阐述方便,将代码简化如下: [php] view plaincopy <?php function curlGet($url) { $ch = curl_ ...

  2. PHP使用CURL抓取页面

    cURL的基本原理 curl是利用URL语法在命令行方式下工作的开源文件传输工具,他能够从互联网上获得各种各样的网络资源.简单来说,curl就是抓取页面的升级版. <?php//1.初始化,创建 ...

  3. curl抓取页面是乱码 php_php解决curl编码问题-curl乱码-curl在post表单时乱码

    目前经常使用的编码为UTF-8当然还有GB2312,GBK等编码,在进行网页的抓取分析的时候总会遇到乱码的问题,当网页编码为GB2312数据库编码为UTF-8时也会遇到这个问题. php的mb_con ...

  4. curl抓取页面是乱码 php_php curl 获取网页内容 中文乱码

    获取是没问题..但是似乎字符编码上有些问题, //header( "Content-type:text/html;Charset=utf-8" ); $urls = [ 'http ...

  5. curl抓取页面每次生成新的session问题

    2019独角兽企业重金招聘Python工程师标准>>> curl_setopt($ch , CURLOPT_COOKIEJAR , COOKIE_FILE_PATH); curl_s ...

  6. php抓取页面方法汇总

    在做一些互联网应用的时候,往往需要抓取网络文件大多数网页文件,一般情况下都是利用php模拟浏览器的访问,通过http请求访问url地址,然后得到html源代码或者其它格式的数据,然后对这些数据进行处理 ...

  7. crul php 反爬虫,pixabay 反爬好厉害,浏览器能访问,复制所有 headers 用 curl 抓取,直接 403,好神奇!...

    这几天不能外出,在家闲来无事准备写爬虫练手,选了个 pixabay.com ,浏览器正常访问,复制浏览器 headers,用 curl 抓取页面内容: $ch = curl_init('https:/ ...

  8. PHP使用CURL抓取网页

    CURL是一个非常强大的开源库,支持很多协议,包括HTTP.FTP.TELNET等,我们使用它来发送HTTP请求.它给我 们带来的好处是可以通过灵活的选项设置不同的HTTP协议参数,并且支持HTTPS ...

  9. 【php】curl模拟登录抓取页面信息

    [php]curl模拟登录抓取页面信息 在本项目中,使用php抓取四川大学综合教务网站的成绩信息.课程信息以及登录用户的基本资料,解析数据并存入数据库,以实现对所得信息的进一步分析,并呈现给用户. 本 ...

  10. 爬虫抓取页面数据原理(php爬虫框架有很多 )

    爬虫抓取页面数据原理(php爬虫框架有很多 ) 一.总结 1.php爬虫框架有很多,包括很多傻瓜式的软件 2.照以前写过java爬虫的例子来看,真的非常简单,就是一个获取网页数据的类或者方法(这里的话 ...

最新文章

  1. UML 类图几种关系的总结
  2. Linux read返回不足值,系统级I/O
  3. windows查看linux端口,Linux和Windows下查看端口详解
  4. 用react和electron实现文件树组件(上)
  5. laravel windows 下queue能长时间执行吗_后台执行超长时间任务解决方案
  6. Ablative analysis(消融分析)
  7. 【动态规划】计蒜客:跳木桩(最长递增子序列的变体)
  8. java12安装和配置_JDK12 安装和环境变量配置
  9. 33.如何用H5标签进行页面自动跳转和自动刷新
  10. 3d巧用计算机算胆,3D巧用函数公式精准定三胆
  11. C#获取本地IP地址
  12. 密码学(五):数字签名和证书
  13. 家到学校路线图怎么画_PPT绘制家到学校路线图教程
  14. FNL资料的变量说明
  15. Microsoft Visio 2010 - 弧线
  16. 软考嵌入式系统设计师2011年上午试题总结
  17. 【Java容器】Java容器入门教程
  18. PySide2----案例练习
  19. VVC/H.266代码阅读(VTM8.0)(三. Slice到CTU的处理 )
  20. Java程序员月薪2W除了北上广深杭,如何达到?需要什么掌握能力

热门文章

  1. NPOI2.0学习(三)
  2. 配置React Native环境
  3. zlog日志库的简单封装,以及给debug级别添加颜色显示
  4. 491 Increasing Subsequences 递增子序列
  5. Android酷炫有用的开源框架
  6. 一步一步学习hadoop(九)
  7. C#.NET软件项目中程序开发外包经验分享【从接包者转变为发包者】
  8. 分层模式下的Lazy Load ——探索Domain Model系列(下)--转
  9. SparkStreaming自定义Receiver
  10. rollup打包js的注意点-haorooms博客分享