php采集网站数据方法及思路
php采集网站数据方法及思路
互联网日新月异的发展,web数据每天以几何级数据量递增,面对这庞大的数据,我们该如何从中获取自己的信息呢?采集网页信息就可以解决这个问题。比如,php采集,用php语言写的web程序,运行于支持php的平台上。这样就可以达到采集的目的。
所以通常所说的php采集就是使用PHP程序,把其他网站中的信息抓取到我们自己的数据库中、网站中。一般情况下都是利用php模拟浏览器的访问,通过http请求访问url地址,然后得到html源代码或者xml数据,得到数据后我们不能直接输出,往往需要对内容进行提取,然后再进行格式化,以更加友好的方式显现出来。
下面就简单介绍一下php采集页面的几种方法及原理:
一、 PHP采集页面的主要方法:
file()函数
file_get_contents()函数
fopen()->fread()->fclose()模式
curl方式
fsockopen()函数 socket模式
使用插件(如:/projects/snoopy/)
二、PHP解析html或xml代码主要方式:
1、file()函数
** file_get_contents()函数**
使用file_get_contents和fopen必须空间开启allow_url_fopen。
方法:,设置 allow_url_fopen = On,allow_url_fopen关闭时fopen和file_get_contents都不能打开远程文件。
fopen()->fread()->fclose()模式
2、curl方式
curl把HTTP协议都封装成了很多函数,直接传相应参数即可,降低了编写HTTP协议字符串的难度。
使用curl必须空间开启curl。
方法:,将extension=,:\WINDOWS\system32下;Linux下要安装curl扩展。
3、fsockopen()函数 socket模式
soc