php获取网页内容方法总结


Posted in PHP onDecember 04, 2008

抓取到的内容在通过正则表达式做一下过滤就得到了你想要的内容,至于如何用正则表达式过滤,在这里就不做介绍了,有兴趣的,以下就是几种常用的用php抓取网页中的内容的方法。
1.file_get_contents
PHP代码

<?php 
$url = "https://3water.com"; 
$contents = file_get_contents($url); 
//如果出现中文乱码使用下面代码 
//$getcontent = iconv("gb2312", "utf-8",$contents); 
echo $contents; 
?>

2.curl
PHP代码
<?php 
$url = "https://3water.com"; 
$ch = curl_init(); 
$timeout = 5; 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); 
//在需要用户检测的网页里需要增加下面两行 
//curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY); 
//curl_setopt($ch, CURLOPT_USERPWD, US_NAME.":".US_PWD); 
$contents = curl_exec($ch); 
curl_close($ch); 
echo $contents; 
?>

3.fopen->fread->fclose
PHP代码
<?php 
$handle = fopen ("https://3water.com", "rb"); 
$contents = ""; 
do { 
$data = fread($handle, 1024); 
if (strlen($data) == 0) { 
break; 
} 
$contents .= $data; 
} while(true); 
fclose ($handle); 
echo $contents; 
?>

注:
1.使用file_get_contents和fopen必须空间开启allow_url_fopen。方法:编辑php.ini,设置allow_url_fopen = On,allow_url_fopen关闭时fopen和file_get_contents都不能打开远程文件。
2.使用curl必须空间开启curl。方法:windows下修改php.ini,将extension=php_curl.dll前面的分号去掉,而且需要拷贝ssleay32.dll和libeay32.dll到C:\WINDOWS\system32下;Linux下要安装curl扩展。
PHP 相关文章推荐
新闻分类录入、显示系统
Oct 09 PHP
php下HTTP Response中的Chunked编码实现方法
Nov 19 PHP
深入for,while,foreach遍历时间比较的详解
Jun 08 PHP
php二分查找二种实现示例
Mar 12 PHP
php命令行用法入门实例教程
Oct 27 PHP
php中http与https跨域共享session的解决方法
Dec 20 PHP
php读取文件内容的方法汇总
Jan 24 PHP
PHP实现批量生成App各种尺寸Logo
Mar 19 PHP
php准确计算复活节日期的方法
Apr 18 PHP
WordPress中用于获取搜索表单的PHP函数使用解析
Jan 05 PHP
php+jQuery+Ajax简单实现页面异步刷新
Aug 08 PHP
PHP删除数组中指定下标的元素方法
Feb 03 PHP
php smarty的预保留变量总结
Dec 04 #PHP
php 页面执行时间计算代码
Dec 04 #PHP
Zend Studio 无法启动的问题解决方法
Dec 04 #PHP
Optimizer与Debugger兼容性问题的解决方法
Dec 01 #PHP
Apache+php+mysql在windows下的安装与配置图解(最新版)
Nov 30 #PHP
discuz论坛 用户登录 后台程序代码
Nov 27 #PHP
php 移除数组重复元素的一点说明
Nov 27 #PHP
You might like
PHP中uploaded_files函数使用方法详解
2011/03/09 PHP
PHP遍历某个目录下的所有文件和子文件夹的实现代码
2013/06/28 PHP
PHP定时更新程序设计思路分享
2014/06/10 PHP
PHP数字前补0的自带函数sprintf 和number_format的用法(详解)
2017/02/06 PHP
一个实用的php验证码类
2017/07/06 PHP
Laravel框架使用Seeder实现自动填充数据功能
2018/06/13 PHP
JavaScript高级程序设计(第3版)学习笔记11 内建js对象
2012/10/11 Javascript
jquery组件使用中遇到的问题整理及解决
2014/02/21 Javascript
jQuery中:focus选择器用法实例
2014/12/30 Javascript
微信小程序实现图片懒加载的示例代码
2017/12/13 Javascript
微信小程序自定义弹窗wcPop插件
2018/11/19 Javascript
原生JS实现动态添加新元素、删除元素方法
2019/05/05 Javascript
Vue用mixin合并重复代码的实现
2020/11/27 Vue.js
[45:17]DOTA2-DPC中国联赛定级赛 Phoenix vs DLG BO3第三场 1月9日
2021/03/11 DOTA
Python代码调试的几种方法总结
2015/04/15 Python
在Python中使用sort()方法进行排序的简单教程
2015/05/21 Python
Python在Console下显示文本进度条的方法
2016/02/14 Python
详解Selenium+PhantomJS+python简单实现爬虫的功能
2019/07/14 Python
python遍历文件目录、批量处理同类文件
2019/08/31 Python
python基于FTP实现文件传输相关功能代码实例
2019/09/28 Python
如何基于Python按行合并两个txt
2020/11/03 Python
Python实现Excel自动分组合并单元格
2021/02/22 Python
新西兰最大的品牌运动鞋购物网站:Platypus NZ
2017/10/27 全球购物
沃达丰英国有限公司:Vodafone英国
2019/04/16 全球购物
荷兰的时尚市场:To Be Dressed
2019/05/06 全球购物
乌克兰珠宝大卖场:Zlato.ua
2020/09/27 全球购物
初中语文教学反思
2014/02/02 职场文书
文明餐桌活动方案
2014/02/11 职场文书
调解协议书
2014/04/16 职场文书
团队精神口号
2014/06/06 职场文书
党的群众路线教育实践活动个人自我剖析材料
2014/10/07 职场文书
债务授权委托书范本
2014/10/17 职场文书
反腐倡廉观后感
2015/06/08 职场文书
2016领导干部廉洁自律心得体会
2016/01/13 职场文书
家电创业计划书
2019/08/05 职场文书
Apache Pulsar集群搭建部署详细过程
2022/02/12 Servers