仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 632|回复: 8
打印 上一主题 下一主题

[学习教程] PHP网页编程之php snoopy收罗类先容

[复制链接]
蒙在股里 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:10:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
在一个团队之中或者说是在一个公司的工作岗位上,需要注重团队之间的交流合作;在学习或工作上都要端正自己的态度,要以认真的态度来对每件事,这样才能让自己更快的投入、更快的学习,而不至于浪费自己的时间。Snoopy是一个用来摹拟扫瞄器的一些复杂功效的php类,能够猎取网页内容,发送表单等操纵。Snoopy准确运转必要你的服务器的PHP版本在4以上,而且撑持PCRE(PerlCompatibleRegularExpressions),基础的LAMP服务都撑持。因为它自己是php一个类,无需扩撑持,因而在服务器不撑持curl的时分是最好的选择。
Snoopy的特性:
1、抓取网页的内容fetch
2、抓取网页的文本内容(往除HTML标签)fetchtext
3、抓取网页的链接,表单fetchlinksfetchform
4、撑持代办署理主机
5、撑持基础的用户名/暗码考证
6、撑持设置user_agent,referer(去路),cookies和headercontent(头文件)
7、撑持扫瞄重视定向,并能把持重定向深度
8、能把网页中的链接扩大成高质量的url(默许)
9、提交数据而且猎取前往值
10、撑持跟踪HTML框架
11、撑持重定向的时分传送cookies
Snoopy类的下载地点:http://sourceforge.net/projects/snoopy/
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。
Snoopy类属性:(缺省值在括号里)
$host毗连的主机
$port毗连的端口
$proxy_host利用的代办署理主机,假如有的话
$proxy_port利用的代办署理主机端口,假如有的话
$agent用户代办署理假装(Snoopyv0.1)
$referer去路信息,假如有的话
$cookiescookies,假如有的话
$rawheaders其他的头信息,假如有的话
$maxredirs最年夜重定向次数,0=不同意(5)
$offsiteokwhetherornottoallowredirectsoff-site.(true)
$expandlinks是不是将链接都补全为完全地点(true)
$user认证用户名,假如有的话
$pass认证用户名,假如有的话
$accepthttp承受范例(image/gif,image/x-xbitmap,image/jpeg,image/pjpeg,*/*)
$error那里报错,假如有的话
$response_code从服务器前往的呼应代码
$headers从服务器前往的头信息
$maxlength最长前往数据长度
$read_timeout读取操纵超时(requiresPHP4Beta4+)
设置为0为没有超时
$timed_out假如一次读取操纵超时了,本属性前往true(requiresPHP4Beta4+)
$maxframes同意追踪的框架最年夜数目
$status抓取的http的形态
$temp_dir网页服务器可以写进的一时文件目次(/tmp)
$curl_pathcURLbinary的目次,假如没有cURLbinary就设置为false
Snoopy利用示例:
(1)猎取指定url内容
  1. $url=http://www.Alixixi.com;include(snoopy.php);$snoopy=newSnoopy;$snoopy->fetch($url);//猎取一切内容echo$snoopy->results;//显现了局$snoopy->fetchtext//猎取文本内容(往失落html代码)$snoopy->fetchlinks//猎取页面一切链接$snoopy->fetchform//猎取页面表单信息
复制代码
(2)提交表单
  1. includesnoopy.php;$snoopy=newSnoopy;$formvars[username]=admin;$formvars[pwd]=admin;$action=http://www.Alixixi.com;//表单提交地点$snoopy->submit($action,$formvars);//$formvars为提交的数组echo$snoopy->results;//猎取表单提交后的前往的了局$snoopy->submittext;//提交后只前往往除html的文本$snoopy->submitlinks;//提交后只前往链接
复制代码
(3)利用Snoopy来假装
  1. $formvars[username]=admin;$formvars[pwd]=admin;$action=http://www.Alixixi.com;includesnoopy.php;$snoopy=newSnoopy;$snoopy->cookies[PHPSESSID]=fc206b1918bd522cc863p36890e6notef7;//假装sessionid$snoopy->agent=(compatible;MSIE4.01;MSN2.5;AOL4.0;Windows98);//假装扫瞄器$snoopy->referer=http://www.Alixixi.com;//假装来历页地点http_referer$snoopy->rawheaders[Pragma]=no-cache;//cache的http头信息$snoopy->rawheaders[X_FORWARDED_FOR]=127.0.0.1;//假装ip$snoopy->submit($action,$formvars);echo$snoopy->results;
复制代码
您大概感乐趣的文章


  • php提醒PHPWarning:date():Itisnotsafetorelyonthe......毛病的办理举措
  • php复杂盘算权重的办法(合适抽奖类的使用)
  • PHP老手用的Insert和Update语句机关类
  • 壮大的PHP图片处置类(水印、通明度、缩放、锐化、扭转、翻转、剪切、反色)
  • php中在变量和函数前加static关头字以后的区分
  • PHPCurl批量多线程翻开网址的类
  • phpwindow平台摹拟checkdnsrr函数检测email是不是实在存在
  • php完成将国民币金额转年夜写的举措
兴趣可能会慢慢消亡,所以适当培养兴趣会激发自己无线的乐趣,有了乐趣,编程有啥难的。
第二个灵魂 该用户已被删除
沙发
发表于 2015-1-18 21:37:55 来自手机 | 只看该作者
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
板凳
发表于 2015-1-24 10:00:33 | 只看该作者
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
蒙在股里 该用户已被删除
地板
 楼主| 发表于 2015-2-1 06:48:47 | 只看该作者
微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox  支持的不是很好,所以能少用还是少用的好。
再现理想 该用户已被删除
5#
发表于 2015-2-7 01:42:39 | 只看该作者
最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。
莫相离 该用户已被删除
6#
发表于 2015-2-19 13:51:35 | 只看该作者
实践是检验自己会不会的真理。
分手快乐 该用户已被删除
7#
发表于 2015-3-6 15:07:52 | 只看该作者
当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标,
若天明 该用户已被删除
8#
发表于 2015-3-13 03:09:31 | 只看该作者
本人接触php时间不长,算是phper中的小菜鸟一只吧。由于刚开始学的时候没有名师指,碰过不少疙瘩,呗很多小问题卡过很久,白白浪费不少宝贵的时间,在次分享一些子的学习的心得。
透明 该用户已被删除
9#
发表于 2015-3-20 11:09:47 | 只看该作者
php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 03:39

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表