Heim >php教程 >php手册 >PHP中Snoopy类的使用

PHP中Snoopy类的使用

WBOY
WBOYOriginal
2016-06-06 19:41:451568Durchsuche

最近看PHP书籍,发现了一个好东东,就是Snoopy类。 Snoopy是一个php类库,用来模拟浏览器的功能,可以获取网页内容,发送表单 。 Snoopy的一些特点: 1抓取网页的内容 fetch 3抓取网页的链接,表单 fetchlinks fetchform 4 支持代理主机 5支持基本的用户名/密

           最近看PHP书籍,发现了一个好东东,就是Snoopy类。Snoopy是一个php类库,用来模拟浏览器的功能,可以获取网页内容,发送表单。 

Snoopy的一些特点: 

1抓取网页的内容 fetch 

3抓取网页的链接,表单 fetchlinks fetchform 
4 支持代理主机 
5支持基本的用户名/密码验证 
6 支持设置 user_agent, referer(来路), cookies 和 header content(头文件) 
7支持浏览器重定向,并能控制重定向深度 
8能把网页中的链接扩展成高质量的url(默认) 
9提交数据并且获取返回值 
10 支持跟踪HTML框架 
11支持重定向的时候传递cookies 
要求php4以上就可以了 由于本身是php一个类 无需扩支持 服务器不支持curl时候的最好选择,


使用方法:

1、先下载Snoopy类,下载地址:http://sourceforge.net/projects/snoopy/

2、先实例化一个对象,然后调用相应的方法即可获取抓取的网页信息

一,取得HTML内容

例子如下:

   include "../Snoopy/Snoopy.class.php";
   $snoopy = new Snoopy;
   $snoopy->fetch("http://www.baidu.com");
   $line = $snoopy->results;
   print_r($line);
?>

得到的结果如下所示:

PHP中Snoopy类的使用

  

   二,取得纯文本内容

   include "../snoopy/snoopy.class.php";
   $snoopy = new Snoopy;
   $snoopy->fetchtext("http://baidu.com");
   $line = $snoopy->results;
   print_r($line);
?>

结果如下:

PHP中Snoopy类的使用

3,取得表单字段内容

程序如下:



  include "../snoopy/snoopy.class.php";
  $snoopy = new Snoopy;
  @$snoopy->fetchform("http://baidu.com");
  print $snoopy->results;


?>

结果如下:

PHP中Snoopy类的使用




Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn