一直写PHP爬虫程序,使用cUrl扩展进行爬取, 每次cUrl的初始化设置真是过于冗长, 所以封装好初始化类, 方便以后直接使用。

有什么问题欢迎邮箱交流:jiangyeziwh@gmail.com 转载请注明出处,谢谢

代码如下(文件名CurlUtil.class.php):

<?php
/*** Created by JetBrains PhpStorm.* User: jiangyeziwh@gmail.com* Date: 12-7-28* Time: 下午1:27* 单行抓取类* To change this template use File | Settings | File Templates.*/
class CurlUtil
{private $_curl;private $_timeout = 30;/*** 初始化curl对象*/public function __construct($refer_str = '', $user_agent_str = '', $post_data_str = '', $cookie_str = '', $is_need_head = 0){$this->_curl = curl_init();if($refer_str != ''){curl_setopt($this->_curl, CURLOPT_REFERER, $refer_str);}if($user_agent_str != ''){curl_setopt($this->_curl, CURLOPT_USERAGENT, $user_agent_str);}if($post_data_str != ''){curl_setopt($this->_curl, CURLOPT_POSTFIELDS, $post_data_str);}if($cookie_str != ''){curl_setopt($this->_curl, CURLOPT_COOKIEFILE, str_replace('\\', '/', dirname(__FILE__)) . '/' . $cookie_str);curl_setopt($this->_curl, CURLOPT_COOKIEJAR, str_replace('\\', '/', dirname(__FILE__)) . '/' . $cookie_str);}curl_setopt($this->_curl, CURLOPT_HTTPHEADER, array('Accept-Language:zh-CN,zh;q=0.8'));curl_setopt($this->_curl, CURLOPT_HEADER, $is_need_head);curl_setopt($this->_curl, CURLOPT_RETURNTRANSFER, 1);curl_setopt($this->_curl, CURLOPT_TIMEOUT, $this->_timeout);curl_setopt($this->_curl, CURLOPT_FOLLOWLOCATION, 1);curl_setopt($this->_curl, CURLOPT_MAXREDIRS, 5);}/*** 注销curl对象*/public function __destruct(){curl_close($this->_curl);}/*** 抓取函数*/public function getHtml($url){curl_setopt($this->_curl, CURLOPT_URL, $url);return curl_exec($this->_curl);}
}
?>

封装的PHP爬虫类(一) 单量抓取相关推荐

  1. Python学习笔记——爬虫原理与Requests数据抓取

    目录 为什么要做网络爬虫? 通用爬虫和聚焦爬虫 HTTP和HTTPS 客户端HTTP请求 请求方法 HTTP请求主要分为Get和Post两种方法 常用的请求报头 1. Host (主机和端口号) 2. ...

  2. 爬虫的原理和数据抓取

    为什么要做爬虫? 都说现在是"大数据时代",那数据从何而来? 企业产生的用户数据:百度指数.阿里指数.TBI腾讯浏览指数.新浪微博指数 数据平台购买数据:数据堂.国云数据市场.贵阳 ...

  3. 网络爬虫——中国大学排名数据抓取

    网络爬虫--中国大学排名数据抓取 目标网址 中国大学排名网:http://www.zuihaodaxue.com/zuihaodaxuepaiming2019.html 全球有很多份大学排名,这里以上 ...

  4. python中国大学排名爬虫写明详细步骤-Python爬虫--2019大学排名数据抓取

    Python爬虫--2019大学排名数据抓取 准备工作 输入:大学排名URL连接 输出:大学排名信息屏幕输出 所需要用到的库:requests,bs4 思路 获取网页信息 提取网页中的内容并放到数据结 ...

  5. 如何用python抓取文献_浅谈Python爬虫技术的网页数据抓取与分析

    浅谈 Python 爬虫技术的网页数据抓取与分析 吴永聪 [期刊名称] <计算机时代> [年 ( 卷 ), 期] 2019(000)008 [摘要] 近年来 , 随着互联网的发展 , 如何 ...

  6. iOS—网络实用技术OC篇网络爬虫-使用java语言抓取网络数据

    网络爬虫-使用java语言抓取网络数据 前提:熟悉java语法(能看懂就行) 准备阶段:从网页中获取html代码 实战阶段:将对应的html代码使用java语言解析出来,最后保存到plist文件 上一 ...

  7. Python网络爬虫,pyautogui与pytesseract抓取新浪微博数据,OCR

    Python网络爬虫,pyautogui与pytesseract抓取新浪微博数据,OCR方案 用ocr与pyautogui,以及webbrowser实现功能:设计爬虫抓取新浪微博数据,比如,抓取微博用 ...

  8. Python爬虫成长之路:抓取证券之星的股票数据(转)

    获取数据是数据分析中必不可少的一部分,而网络爬虫是是获取数据的一个重要渠道之一.鉴于此,我拾起了Python这把利器,开启了网络爬虫之路. 本篇使用的版本为python3.5,意在抓取证券之星上当天所 ...

  9. python爬虫教程,带你抓取百度的高清摄影图片

    python爬虫教程,带你抓取百度的高清摄影图片 源码分享: ''' 在学习过程中有什么不懂得可以加我的 python学习交流扣扣qun,934109170 群里有不错的学习教程.开发工具与电子书籍. ...

最新文章

  1. unity开发小贴士之八 Audio使用心得
  2. 现在转行学习UI设计好不好就业
  3. 教你用R语言分析招聘数据,求职/转行不求人~(附代码、数据集)
  4. 实况CDN专线网络技术架构如何?
  5. 关于jsp页面是放在webroot目录下和web-inf下优缺点
  6. 深度学习和目标检测系列教程 4-300:目标检测入门之目标变量和损失函数
  7. 在VC中如何找到崩溃的源头
  8. TAOCP-1.2.10_求极大值
  9. php创建游戏房间思路,用Swoole来写个联机对战游戏呀!(八)创建游戏房间
  10. linux版gaussian运行,【求助】gaussian 在linux不能运行?急急急 - 量子化学 - 小木虫 - 学术 科研 互动社区...
  11. linux 怎么格式化u盘写保护,u盘怎样去掉写保护状态手机怎么加密软件
  12. David Lowe 的sift代码
  13. 使用JSONObject比较Java复杂对象
  14. SQL中 where, group by,having,order by 的重点
  15. 【笔记】位图(.bmp)和矢量图(Vector):位图是点阵图或光栅图,使用像素的一格一格来描述图像,放大以后每一个像素看就像是一个个的马赛克;矢量图是使用直线和曲线来描述图形,可以无限方法,不会失真
  16. iOS Quartz2D 渐变图形 CGGradient CGShading
  17. android蓝牙查看电池容量_安卓手机如何查看电池损耗?
  18. Mac上浏览器无法联网的解决方法
  19. IDEA 最新激活方法
  20. Cisco VPP(1) 简介

热门文章

  1. android 模拟自动点击,自动点击器(模拟点击)
  2. Unity 3D模型展示框架篇之项目整理
  3. 2012总结之pcode.DefineClass
  4. Gvim开发环境配置笔记--Windows篇(转)
  5. Java脚本数组复制
  6. VUE 组件手动渲染、组件延迟渲染
  7. 剑指offer55 二叉树的深度 捏软柿子
  8. python-matplotlib制作图表与中文正常显示
  9. 史上最全的安卓WebView之WebSettings说明
  10. 学习笔记10----学成在线案例