PHP抓取网页、解析HTML常用的方法总结


Posted in PHP onJuly 01, 2015

概述

爬虫是我们在做程序时经常会遇到的一种功能。PHP有许多开源的爬虫工具,如snoopy,这些开源的爬虫工具,通常能帮我们完成大部分功能,但是在某种情况下,我们需要自己实现一个爬虫,本篇文章对PHP实现爬虫的方式做个总结。

PHP实现爬虫主要方法

1.file()函数
2.file_get_contents()函数
3.fopen()->fread()->fclose()方式
4.curl方式
5.fsockopen()函数,socket方式
6.使用开源工具,如:snoopy

PHP解析XML或HTML主要方式

1.正则表达式
2.PHP DOMDocument对象
3.插件,如:PHP Simple HTML DOM Parser

总结

这里对PHP实现爬虫的方式做个简单得总结,本篇设计到得内容还有很多,稍后会对PHP解析HTML和XML的方式做个总结。

PHP 相关文章推荐
php 无限级数据JSON格式及JS解析
Jul 17 PHP
PHP 中关于ord($str)>0x80的详细说明
Sep 23 PHP
PHP5中Cookie与 Session使用详解
Apr 30 PHP
记录mysql性能查询过程的使用方法
May 02 PHP
php+xml结合Ajax实现点赞功能完整实例
Jan 30 PHP
使用PHP生成图片的缩略图的方法
Aug 18 PHP
关于php微信订阅号开发之token验证后自动发送消息给订阅号但是没有消息返回的问题
Dec 21 PHP
PHP中new static()与new self()的比较
Aug 19 PHP
总结PHP删除字符串最后一个字符的三种方法
Aug 30 PHP
PHP使用PDO调用mssql存储过程的方法示例
Oct 07 PHP
php扩展开发入门demo示例
Sep 23 PHP
基于thinkphp5框架实现微信小程序支付 退款 订单查询 退款查询操作
Aug 17 PHP
PHP中static关键字以及与self关键字的区别
Jul 01 #PHP
PHP单例模式详细介绍
Jul 01 #PHP
curl和libcurl的区别简介
Jul 01 #PHP
PHP+Ajax实时自动检测是否联网的方法
Jul 01 #PHP
PHP超全局数组(Superglobals)介绍
Jul 01 #PHP
PHP中的类型提示(type hinting)功能介绍
Jul 01 #PHP
7个鲜为人知却非常实用的PHP函数
Jul 01 #PHP
You might like
php如何调用webservice应用介绍
2012/11/24 PHP
PHP、Nginx、Apache中禁止网页被iframe引用的方法
2020/10/01 PHP
thinkPHP显示不出验证码的原因与解决方法分析
2017/05/20 PHP
phpStudy2016 配置多个域名期间遇到的问题小结
2017/10/19 PHP
laravel5实现微信第三方登录功能
2018/12/06 PHP
在Javascript中为String对象添加trim,ltrim,rtrim方法
2006/09/22 Javascript
js实现iframe动态调整高度的代码
2008/01/06 Javascript
提示$ is not defined错误分析及解决
2013/04/09 Javascript
让jQuery与其他JavaScript库并存避免冲突的方法
2013/12/23 Javascript
Jquery中find与each方法用法实例
2015/02/04 Javascript
javascript跨域总结之window.name实现的跨域数据传输
2015/11/01 Javascript
JavaScript Ajax实现异步通信
2016/12/14 Javascript
Bootstrap表单使用方法详解
2017/02/17 Javascript
Bootstrap实现各种进度条样式详解
2017/04/13 Javascript
微信小程序开发之animation循环动画实现的让云朵飘效果
2017/07/14 Javascript
VUE页面中加载外部HTML的示例代码
2017/09/20 Javascript
node使用Koa2搭建web项目的方法
2017/10/17 Javascript
bootstrap 通过加减按钮实现输入框组功能
2017/11/15 Javascript
VUE Error: getaddrinfo ENOTFOUND localhost
2018/05/03 Javascript
JavaScript 九种跨域方式实现原理
2019/02/11 Javascript
微信小程序顶部导航栏可滑动并选中放大
2019/12/05 Javascript
node.js +mongdb实现登录功能
2020/06/18 Javascript
matplotlib作图添加表格实例代码
2018/01/23 Python
PyQt5实现无边框窗口的标题拖动和窗口缩放
2018/04/19 Python
python求质数列表的例子
2019/11/24 Python
python 项目目录结构设置
2020/02/14 Python
CSS3样式linear-gradient的使用实例
2017/01/16 HTML / CSS
利用CSS3实现圆角的outline效果的教程
2015/06/05 HTML / CSS
Application Cache未缓存文件无法访问无法加载问题
2014/05/31 HTML / CSS
德国、奥地利和瑞士最大的旅行和度假门户网站:HolidayCheck
2019/11/14 全球购物
管理部部长岗位职责
2013/12/05 职场文书
大学毕业生通用自我评价
2014/01/05 职场文书
2014庆六一活动方案
2014/03/02 职场文书
餐厅感恩节活动策划方案
2014/10/11 职场文书
幼儿园托班开学寄语(2016春季)
2015/12/03 职场文书
PyQt5 QThread倒计时功能的实现代码
2021/04/02 Python