`
dennisbing
  • 浏览: 159094 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

PHP Snoopy网页抓取工具

    博客分类:
  • PHP
 
阅读更多

snoopy是一个php类,用来模仿web浏览器的功能,它能完成获取网页内容和发送表单的任务。
下面是它的一些特征:
1、方便抓取网页的内容11111111111
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 = new Snoopy;
$snoopy->fetchtext("http://www.phpobject.net/blog");
echo $snoopy->results;

^_^,不错把,在比如抓取链接

include "Snoopy.class.php";
$snoopy = new Snoopy;
$snoopy->fetchlinks("http://www.phpobject.net/blog");
print_r($snoopy->results);

使用snoopy提交数据实现登陆

模拟登陆可以用curl或者socket来实现,当curl需要服务器相应的启用curl module,自己socket实现相对比较麻烦,使用snoopy就简单了很多啦。

在这里,我们使用喜悦国际村做为例子。(^_^,纯属研究)

首先,我们要获取到登陆需要发送什么字段,目标地址是什么。这里我们使用snoopy的fetchform来实现。

include "Snoopy.class.php";
$snoopy = new Snoopy;
$snoopy->fetchform("http://www.phpx.com/happy/logging.php?action=login");
print $snoopy->results;

当然你也可以直接查看http://www.phpx.com/happy/…的源代码来实现,不过这样更加方便把。这里,我们获取到目标和提交的数据,下一步就可以实现模拟登陆了。

代码如下:

include "Snoopy.class.php";
$snoopy = new Snoopy;
$submit_url = "http://www.phpx.com/happy/logging.php?action=login";
 
$submit_vars["loginmode"] = "normal";
$submit_vars["styleid"] = "1";
$submit_vars["cookietime"] = "315360000";
$submit_vars["loginfield"] = "username";
$submit_vars["username"] = "********"//你的用户名
$submit_vars["password"] = "*******"//你的密码
$submit_vars["questionid"] = "0";
$submit_vars["answer"] = "";
$submit_vars["loginsubmit"] = "提   交";
$snoopy->submit($submit_url,$submit_vars);
print $snoopy->results;

分享到:
评论

相关推荐

    Snoopy_PHP网页抓取工具

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

    PHP抓取及过滤网站工具snoopy

    snoopy是一个php类,用来模仿web浏览器的功能,它能完成获取网页内容和发送表单的任务。 下面是它的一些特征: 1、方便抓取网页的内容 2、方便抓取网页的文字(去掉HTML代码) 3、方便抓取网页的链接 4、支持代理...

    snoopy php来提取网页中你要的信息

    无论是为了数据分析、市场调研还是自动化任务处理,掌握一种有效的网页抓取工具都是必不可少的。Snoopy作为一款用PHP编写的网络客户端类库,能够帮助开发者轻松地从网页中提取所需信息。接下来,我们将深入探讨...

    用snoopy抓取EMS验证码,远程模拟查询单号,取得查询结果

    总的来说,这个项目展示了如何利用Snoopy库进行网页抓取和模拟交互,特别是在处理验证码和远程查询这类任务时的实用性。通过这种方式,开发者可以自动化获取EMS的快递信息,为个人或企业的物流管理提供便利。然而,...

    php snoopy 模拟表单提交 数据抓取

    总结来说,Snoopy为PHP开发者提供了一种方便的工具,能够模拟浏览器行为,执行表单提交和数据抓取。通过理解其工作原理和使用方法,我们可以构建自己的数据抓取脚本,高效地获取网络上的信息。然而,值得注意的是,...

    PHP采集器Snoopy详解

    标题 "PHP采集器Snoopy详解" 描述的是一个用于PHP的网络数据抓取工具,名为Snoopy。Snoopy作为一个PHP类,其主要功能是模拟浏览器的行为,包括获取网页内容、处理表单提交等。它需要PHP版本在4以上,并依赖于PCRE...

    Snoopy.class.php类及中文说明

    总结来说,Snoopy.class.php是一个强大的PHP HTTP客户端工具,它的易用性和灵活性使其成为PHP开发者的得力助手,特别是对于需要处理网络请求和网页数据抓取的项目。配合中文说明,可以方便中文用户快速上手并高效地...

    PHP采集类Snoopy抓取图片实例

    在使用Snoopy抓取网页内容时,需要考虑网页的编码问题。确保从网页获取的内容使用正确的编码解析,通常网页内容的编码为UTF-8。在处理内容时,可能需要根据网页的具体情况调整内容的处理逻辑,如匹配图片地址时的...

    Snoopy

    Snoopy库允许开发者通过PHP代码发送GET、POST和其他HTTP请求,获取网页内容,这对于网页抓取、数据分析或者模拟登录等任务非常有用。 在PHP中,Snoopy类提供了丰富的功能,包括但不限于以下几点: 1. **HTTP方法...

    Snoopy.class.rar_Snoopy.class.php

    Snoopy在PHP世界中通常指的是一个网络爬虫类库,用于模拟HTTP请求,抓取网页数据。这个压缩包很可能是该类库的源代码。 "Snoopy.class.php"是PHP的一个开源库,它允许开发者发送HTTP请求,包括GET和POST,以模拟...

    snoopy手册中文版

    ### Snoopy 手册中文版知识点详解 #### 一、Snoopy简介 Snoopy是一款功能强大的PHP网络客户端库,适用于网页...通过以上详细介绍,可以看出Snoopy是一款功能全面且易于使用的网页抓取工具,适合各种规模的项目需求。

    基于PHP的snoopy强大的PHP采集类源码.zip

    【标题】"基于PHP的snoopy强大的PHP采集类源码.zip" 提供的是一个用于网页数据抓取的工具,Snoopy是一个流行的PHP类库,专为处理Web抓取和模拟浏览器行为而设计。在PHP开发中,当需要从网站获取数据而没有提供API时...

    PHP实例开发源码—snoopy 强大的PHP采集类.zip

    Snoopy是一个广泛应用于PHP项目的网页抓取工具,它可以帮助开发者轻松地获取网页内容,模拟浏览器发送HTTP请求,并处理登录、表单提交等复杂交互。 【描述】中提到的"强大的PHP采集类"暗示了Snoopy类在数据抓取和...

    Snoopy_试用心得

    ### Snoopy PHP 类详解 ...总之,Snoopy 是一个非常强大且灵活的 PHP 工具类库,适合用于各种网页抓取和自动化任务。通过合理的配置和使用方法,开发者可以利用 Snoopy 实现高效的网络数据采集与处理工作。

    snoopy使用方法

    ### Snoopy 使用方法详解 #### 一、简介 Snoopy 是一款强大的 PHP 类库,主要功能在于模拟 Web 浏览器的行为,帮助开发者轻松抓取网页内容、发送表单...总之,Snoopy 是一款非常实用的工具,适合于各种网页抓取需求。

    snoopy1.2.4php

    标题 "snoopy1.2.4php" 指的是一个...总的来说,Snoopy是PHP开发者进行网络数据抓取和分析的强大工具,但使用时需谨慎并确保合规。通过阅读"Snoopy-1.2.4"压缩包中的文档和示例,开发者可以更深入地了解和利用这个库。

    php基于Snoopy解析网页html的方法

    总之,PHP中的Snoopy类是一个强大的工具,用于网页抓取和HTML解析。通过结合DOMDocument和DOMXPath,可以高效地从网页中提取数据。不过要注意,网页抓取应遵循合法性和道德规范,尊重网站的robots.txt文件,并避免对...

    基于PHP的snoopy 强大的PHP采集类.zip

    总的来说,Snoopy提供了一个简洁而强大的框架,使PHP开发者能够轻松地进行网页数据的抓取。理解并掌握Snoopy的使用,不仅可以提升开发效率,还能帮助你构建出更加灵活的网络爬虫应用。但同时,我们也要时刻记住,...

    2018全国行政地区邮政编码mysql版本【附带PHP抓取源码】

    具体而言,PHP Snoopy类和phpcrawler库是实现网页抓取的重要工具。 - **PHP Snoopy类**:用于模拟浏览器行为,可以轻松地获取网页内容。 - **phpcrawler库**:提供了更多的高级功能,如自动处理Cookies、跟踪重定向...

Global site tag (gtag.js) - Google Analytics