php抓取网页snoopy(Snoopy是什么?PHP4Beta4or.SnoopyorSnoopy)
优采云 发布时间: 2021-09-26 13:03php抓取网页snoopy(Snoopy是什么?PHP4Beta4or.SnoopyorSnoopy)
什么是史努比
Snoopy是一个PHP类,用于模拟web浏览器的功能。它可以完成获取网页内容和发送表单的任务
史努比的一些特点:
*易于抓取网页内容
*易于抓取网页的文本内容(删除HTML标记)
*易于获取网页链接
*支持代理主机
*支持基本用户名/密码身份验证
*支持设置用户代理、引用、cookie和标题内容
*支持浏览器转向和控制转向深度
*可以将网页中的链接扩展为高质量URL(默认)
*提交数据和获取返回值很方便
*支持跟踪HTML框架(添加了V0.92)
*重新转向时支持Cookie的交付(添加了V0.92)
要求:
Snoopy需要PHP和PCRE(Perl兼容的正则表达式)
应该是PHP3.0.9及以上。对于读取超时支持,它需要
PHP4Beta4或更高版本。史努比是用PHP开发和测试的
类方法:
获取($URI)
---–
这是一种用于获取网页内容的方法
$URI参数是已爬网网页的URL地址
获取的结果存储在$this->results中
如果您正在抓取一帧,Snoopy将跟踪每个帧并将其存储在数组中,然后存储$this->results
fetchtext($URI)
-----
此方法类似于fetch()。唯一的区别是,此方法将删除HTML标记和其他无关数据,并且只返回网页中的文本内容
fetchform($URI)
-----
此方法类似于fetch()。唯一的区别是,此方法将删除HTML标记和其他不相关的数据,并且只返回网页中的表单内容
获取链接($URI)
------
此方法类似于fetch()。唯一的区别是,此方法将删除HTML标记和其他无关数据,并且只返回网页中的链接
默认情况下,相对链接会自动完成并转换为完整URL
提交($URI,$formvars)
--------
此方法向$URL指定的链接地址发送确认表单$Formvars是存储表单参数的数组
submittext($URI,$formvars)
--------–
此方法类似于submit()。唯一的区别是,此方法将删除HTML标记和其他无关数据,并且仅在登录后返回网页中的文本内容
提交链接($URI)
------
此方法类似于submit()。唯一的区别是,此方法将删除HTML标记和其他无关数据,并且只返回网页中的链接
默认情况下,相对链接会自动完成并转换为完整URL
Class属性:(默认值在括号中)
$host连接的主机
$port连接端口
$proxy\主机使用的代理主机(如果有)
$proxy\端口使用代理主机端口(如果有)
$agent用户代理伪装(史努比V0.1)
$referer源信息(如果有)
$cookies饼干,如有
$rawheads其他标题信息(如有)
$MaxEditor最大重定向时间,0=不允许(5)
$offsiteok是否允许场外重定向。(true)
$expandlinks是否完成指向完整地址的所有链接(true)
$user authentication username(如果有)
$pass身份验证用户名(如果有)