zoukankan      html  css  js  c++  java
  • PHP中Snoopy类的使用

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

    Snoopy的一些特点: 

    1抓取网页的内容 fetch 
    2 抓取网页的文本内容 (去除HTML标签) fetchtext 
    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内容

    例子如下:

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

    得到的结果如下所示:


      

       二,取得纯文本内容

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

    结果如下:


    3,取得表单字段内容

    程序如下:

    <?php


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


    ?>

    结果如下:





  • 相关阅读:
    如何设计一个秒杀系统
    Leetcode题目437:路径总和III(递归-简单)
    Leetcode题目461:汉明距离(位运算-简单)
    Leetcode题目617:合并二叉树(递归-简单)
    分布式锁
    分布式搜索引擎
    数据库
    Java知识体系思维导图
    wav文件头详解,看懂wav文件
    推荐一个最近在学习的AI算法工程师手册,侵删
  • 原文地址:https://www.cnblogs.com/cmderq/p/9130922.html
Copyright © 2011-2022 走看看