magpierss中就用到了snoopy,这让我有点兴趣去研究下这个咚咚。再SF上,找到了这个源代码。居然就是一个类,但不要笑看哦,功能可是很强大的。
官方的简介,我翻译了下(汗。。。最近老是充当翻译的角色)
snoopy是一个php类,用来模仿web浏览器的功能,它能完成获取网页内容和发送表单的任务。
下面是它的一些特征:
1、方便抓取网页的内容
2、方便抓取网页的文字(去掉HTML代码)
3、方便抓取网页的链接
4、支持代理主机
5、支持基本的用户/密码认证模式
6、支持自定义用户agent,referer,cookies和header内容
7、支持浏览器转向,并能控制转向深度
8、能把网页中的链接扩展成高质量的url(默认)
9、方便提交数据并且获取返回值
10、支持跟踪HTML框架(v0.92增加)
11、支持再转向的时候传递cookies
下面是简单的例子,比如说我们抓取我的blog的文字
<?
include"Snoopy.class.php";
$snoopy=newSnoopy;
$snoopy->fetchtext("http://www.phpobject.net/blog");
echo$snoopy->results;
?>
^_^,不错把,在比如抓取链接
<?
include"Snoopy.class.php";
$snoopy=newSnoopy;
$snoopy->fetchlinks("http://www.phpobject.net/blog");
print_r($snoopy->results);
?>
嘿嘿,效果不错把,而且全部都是我们需要的url,而没有那种/blog/read.php/85.htm那种东西。
另外提交数据那些稍后测试。。。
yuanma/php/Snoopy-1.2.3.tar.gz本地下载