PHP类Snoopy的特点分析

大家都知道在PHP语言中,具有很多功能强大的函数,来帮助程序员们完成各种功能需求。我们今天要为大家介绍的则是PHP类Snoopy的一些相关知识。

PHP类Snoopy是什么?

Snoopy是一个php类,用来模仿web浏览器的功能,它能完成获取网页内容和发送表单的任务。

PHP类Snoopy的一些特点:

* 方便抓取网页的内容
* 方便抓取网页的文本内容 (去除HTML标签)
* 方便抓取网页的链接
* 支持代理主机
* 支持基本的用户名/密码验证
* 支持设置 user_agent, referer(来路), cookies 和 header content(头文件)
* 支持浏览器转向,并能控制转向深度
* 能把网页中的链接扩展成高质量的url(默认)
* 方便提交数据并且获取返回值
* 支持跟踪HTML框架(v0.92增加)
* 支持再转向的时候传递cookies (v0.92增加)

PHP类Snoopy正确运行需要你的服务器的 PHP 版本在 4 以上,并且支持 PCRE(Perl Compatible Regular Expressions),基本的 LAMP 服务都支持。

它提供以下的接口或者方法:

fetch($URI)
这个方法是抓取网页的内容,$URI 是要抓取网页的网址,抓取过来结果存储到 $this->results。如果你抓取的是框架,这每个 frame 都会被抓取,结果会保存到一个数组中。

fetchtext($URI)
这个方法和 fetch() 是大致相同,只是它的结果是文本,除去 HTML 标签和其他无关信息。

fetchform($URI)
这个方法只返回抓取的网页上 form 元素。

fetchlinks($URI)
这个方法只返回抓取的网页上的链接,默认返回的链接都是含有域名的链接。

submit($URI,$formvars)
这个方法提交一个表单到指定的 $URI。$formvars 是要传递的 form 变量数组。

submittext($URI,$formvars)
这个方法和 submit() 基本一致,但是它返回的是文本,除去了 html 标签和其他无关数据。

相关推荐