Snoopy是一个php采集类,用来模拟浏览器获取网页内容和发送表单。
下面是一些Snoopy特性:
- 容易抓取网页内容
- 容易抓取页面文本(去除HTML标签)
- 容易抓取网页内链接
- 支持代理抓取
- 支持基本的用户名、密码认证
- 支持设置user-agent,referer,cookies和header内容
- 支持浏览器转向,和控制转向深度
- 能把页面中的链接转化成高质量的链接
- 容易提交数据和获得返还值
- 能追踪HTML框架
- 支持重定向的时候传递Cookies
Snoopy类,方法:
fetch($URI)
抓取网页的内容而使用的方法。$URI参数是被抓取网页的URL地址。抓取的结果被存储在 $this->results 中。如果你正在抓取的是一个框架,Snoopy将会将每个框架追踪后存入数组中,然后存入 $this->results。
fetchtext($URI)
本方法类似于fetch(),唯一不同的就是本方法会去除HTML标签和其他的无关数据,只返回网页中的文字内容。
fetchform($URI)
本方法类似于fetch(),唯一不同的就是本方法会去除HTML标签和其他的无关数据,只返回网页中表单内容(form)。
fetchlinks($URI)
本方法类似于fetch(),唯一不同的就是本方法会去除HTML标签和其他的无关数据,只返回网页中链接(link)。默认情况下,相对链接将自动补全,转换成完整的URL。
submit($URI,$formvars)
本方法向$URL指定的链接地址发送确认表单。$formvars是一个存储表单参数的数组。
submittext($URI,$formvars)
本方法类似于submit(),唯一不同的就是本方法会去除HTML标签和其他的无关数据,只返回登陆后网页中的文字内容。
submitlinks($URI)
本方法类似于submit(),唯一不同的就是本方法会去除HTML标签和其他的无关数据,只返回网页中链接(link)。默认情况下,相对链接将自动补全,转换成完整的URL。
类属性: (缺省值在括号里)
- $host 连接的主机
- $port 连接的端口
- $proxy_host 使用的代理主机,如果有的话
- $proxy_port 使用的代理主机端口,如果有的话
- $agent 用户代理伪装 (Snoopy v0.1)
- $referer 来路信息,如果有的话
- $cookies,如果有的话
- $rawheaders 其他的头信息, 如果有的话
- $maxredirs 最大重定向次数,0=不允许 (5)
- $offsiteok whether or not to allow redirects off-site. (true)
- $expandlinks 是否将链接都补全为完整地址 (true)
- $user 认证用户名, 如果有的话
- $pass 认证用户名, 如果有的话
- $accept http 接受类型 (image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*)
- $error 哪里报错, 如果有的话
- $response_code 从服务器返回的响应代码
- $headers 从服务器返回的头信息
- $maxlength 最长返回数据长度
- $read_timeout 读取操作超时 (requires PHP 4 Beta 4+) 设置为0为没有超时
- $timed_out 如果一次读取操作超时了,本属性返回 true (requires PHP 4 Beta 4+)
- $maxframes 允许追踪的框架最大数量
- $status 抓取的http的状态
- $temp_dir 网页服务器能够写入的临时文件目录 (/tmp)
- $curl_path cURL binary 的目录, 如果没有cURL binary就设置为 false
Snoopy官方网址:http://sourceforge.net/projects/snoopy/
相关推荐
Snoopy.class.php 是一个广泛使用的PHP类库,主要用于实现HTTP客户端的功能,它允许开发者模拟浏览器行为,发送HTTP请求,并获取服务器的响应。这个库在处理网页抓取、数据采集和自动化测试等任务时非常有用。 ...
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页内容,发送表单。使用Snoopy来模拟登陆,然后采集登陆后的页面非常管用! Snoopy的特点: 1、抓取网页的内容 fetch 2、抓取网页的文本内容 (去除HTML标签) ...
--Snoopy.class.php (很好用的PHP采集类) --readme.txt (就是本文) --kw.xsd (xml schema) --kw.xml (关键词列表文件,要查询的域名与其关键字名单,一条一条写进去就可以了,可以用记事本编辑) --kw1....
Snoopy.class.php,实现网页下载, 网页采集类,Snoopy的一些功能特点: 抓取网页的内容 fetch() 抓取网页的文本内容 (去除HTML标签) fetchtext() 抓取网页的链接,表单 fetchlinks() fetchform() 支持代理...
【标题】"PHP实例开发源码—snoopy 强大的PHP采集类.zip" 提供的是一个使用PHP编写的名为Snoopy的网络爬虫类的源代码实例。Snoopy是一个广泛应用于PHP项目的网页抓取工具,它可以帮助开发者轻松地获取网页内容,模拟...
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页内容,发送表单,可以用来开发一些采集程序和小偷程序,本文章详细介绍snoopy的使用教程。 Snoopy的一些特点: 抓取网页的内容 fetch 抓取网页的文本内容 ...
总结一下,这个PHP采集类项目提供了一种高效的方式,利用Snoopy类进行网页抓取,自动下载图片到本地,并更新HTML中的图片链接。这种技术在数据分析、内容聚合、搜索引擎优化等领域有着广泛的应用。然而,需要注意的...
Snoopy是一个强大的PHP类,专门用于模拟浏览器行为,它允许开发者从远程服务器获取网页内容,执行POST和GET请求,以及处理登录和其他涉及交互的任务。这个工具在进行Web抓取、数据分析或者自动化测试时非常有用。...
《使用PHP的Snoopy类抓取网页图片的实践与解析》 PHP作为一个强大的服务器端脚本语言,常被用于网站开发和数据抓取。在处理网页数据时,有时我们需要从网页中抓取图片资源。Snoopy是一个PHP的网络爬虫类库,能够...
Snoopy是一个PHP类库,能够模拟浏览器的功能,通过这个类可以实现对网页的抓取和数据的发送,例如获取网页内容、提取网页文本内容、获取网页中的链接和表单信息等。它非常适合于那些希望在服务器上进行Web数据采集的...
、snoopy.class.php这三个远程页面抓取或采集中用到的工具,默迹还是侵向于用snoopy.class.php,因为他效率比较高且不需要服务器特定配置支持,在普通虚拟主机中即可使用,file_get_contents()效率稍低些,...