
snoopy php网页抓取工具
snoopy php网页抓取工具(做过j2ee或android开发的童鞋,应该或多或少都使用过Apeache的HttpClient类库)
网站优化 • 优采云 发表了文章 • 0 个评论 • 63 次浏览 • 2022-02-05 01:16
如果你做过童鞋的j2ee或者android开发,应该多多少少用过Apeache的HttpClient类库。这个类库为我们提供了非常强大的服务端Http请求操作。在开发中使用非常方便。
最近在开发php中,也需要在服务器端发送http请求,然后再处理回客户端。
我google了一下,发现php中有这样一个类库,名字叫httpclient。我很兴奋。看了下官网,发现已经很多年没有更新了,功能好像也有限,很是失望。然后又找到了另一个类库Snoopy,这个类库我不知道,但是网上的反应还不错,所以决定用它。它的 API 使用与 Apache 的 HttpClient 有很大的不同,但仍然非常好用。并且提供了很多特殊用途的方法,比如只能抓取页面中的form表单,或者所有的链接等等。
include \'Snoopy.class.php\';
$snoopy = new Snoopy();
$snoopy->fetch("http://www.baidu.com");
echo $snoopy->results;
以上几行代码就可以轻松爬取百度的页面。
当然,当需要发送post表单时,可以使用submit方法提交数据。
同时还提供了请求头、响应头以及cookies的相关操作功能,功能非常强大。
\n";} else {echo "错误获取文档:" . $snoopy->error . "\n";}
更多操作方法可以去Snoopy的官方文档,或者直接查看源码。
此时,snoopy 只取回页面。如果您想从获取的页面中提取数据,那么它不会有太大帮助。这里又找到了一个php解析html的好工具:phpQuery,它提供了和jquery几乎一样的操作方法,并且提供了一些php的特性,熟悉jquery的童鞋,应该还是蛮好用的phpquery,连phpQuery的文档都没有已经需要了。。
使用Snoopy+PhpQuery可以轻松实现网页爬取和数据分析,非常实用。我最近也需要这个,只找到了这两个不错的类库。事实证明,java可以做的事情有很多。php也可以做到。
有兴趣的同学也可以尝试用它们制作一个简单的网络爬虫。 查看全部
snoopy php网页抓取工具(做过j2ee或android开发的童鞋,应该或多或少都使用过Apeache的HttpClient类库)
如果你做过童鞋的j2ee或者android开发,应该多多少少用过Apeache的HttpClient类库。这个类库为我们提供了非常强大的服务端Http请求操作。在开发中使用非常方便。
最近在开发php中,也需要在服务器端发送http请求,然后再处理回客户端。
我google了一下,发现php中有这样一个类库,名字叫httpclient。我很兴奋。看了下官网,发现已经很多年没有更新了,功能好像也有限,很是失望。然后又找到了另一个类库Snoopy,这个类库我不知道,但是网上的反应还不错,所以决定用它。它的 API 使用与 Apache 的 HttpClient 有很大的不同,但仍然非常好用。并且提供了很多特殊用途的方法,比如只能抓取页面中的form表单,或者所有的链接等等。
include \'Snoopy.class.php\';
$snoopy = new Snoopy();
$snoopy->fetch("http://www.baidu.com");
echo $snoopy->results;
以上几行代码就可以轻松爬取百度的页面。
当然,当需要发送post表单时,可以使用submit方法提交数据。
同时还提供了请求头、响应头以及cookies的相关操作功能,功能非常强大。
\n";} else {echo "错误获取文档:" . $snoopy->error . "\n";}
更多操作方法可以去Snoopy的官方文档,或者直接查看源码。
此时,snoopy 只取回页面。如果您想从获取的页面中提取数据,那么它不会有太大帮助。这里又找到了一个php解析html的好工具:phpQuery,它提供了和jquery几乎一样的操作方法,并且提供了一些php的特性,熟悉jquery的童鞋,应该还是蛮好用的phpquery,连phpQuery的文档都没有已经需要了。。
使用Snoopy+PhpQuery可以轻松实现网页爬取和数据分析,非常实用。我最近也需要这个,只找到了这两个不错的类库。事实证明,java可以做的事情有很多。php也可以做到。
有兴趣的同学也可以尝试用它们制作一个简单的网络爬虫。
snoopy php网页抓取工具(做抓取前,记得把php.ini中的max_execution)
网站优化 • 优采云 发表了文章 • 0 个评论 • 65 次浏览 • 2022-01-31 22:02
在做爬取之前,记得把php.ini中的max_execution_time设置大一点,否则会报错。
一、 使用 Snoopy.class.php 抓取页面
一个很可爱的班级名字。功能也很强大,用来模拟浏览器的功能,可以获取网页内容,发送表单等。
1)我要抓取网站的一个列表页的内容,我要抓取的是全国医院信息内容,如下图:
2)我自然是复制了URL地址,用Snoopy类抓取前10页的内容,并将内容放到本地,在本地创建一个html文件,用于后面的分析。
$snoopy=new Snoopy();
//医院list页面
for($i = 1; $i fetch($url);
file_put_contents("web/page/$i.html", $snoopy->results);
}
echo 'success';
3)很奇怪,返回的内容不是国家内容,而是上海的相关内容
4) 后来我怀疑里面可能设置了一个cookie,然后用firebug查了一下,有一个惊人的内幕
5)请求中也放入了cookie的值,加上了一个设置语句$snoopy->cookies["_area_"],情况就大不一样了,顺利返回全国信息。
$snoopy=new Snoopy();
//医院list页面
$snoopy->cookies["_area_"] = '{"provinceId":"all","provinceName":"全国","cityId":"all","cityName":"不限"}';
for($i = 1; $i results;
}
2)使用phpQuery获取节点信息,如下图DOM结构:
使用一些phpQuery方法,结合DOM结构读取各个医院信息的URL地址。
for($i = 1; $i attr('href')); //医院详情
}
}
3)根据读取的URL地址列表,抓取指定页面。
$detailIndex = 1;
for($i = 1; $i results);
$detailIndex++;
}
}
FQ工具下载:
克服障碍.rar
演示下载:
关于 Snoopy 类的一些注意事项:
类方法
获取($URI) 查看全部
snoopy php网页抓取工具(做抓取前,记得把php.ini中的max_execution)
在做爬取之前,记得把php.ini中的max_execution_time设置大一点,否则会报错。
一、 使用 Snoopy.class.php 抓取页面
一个很可爱的班级名字。功能也很强大,用来模拟浏览器的功能,可以获取网页内容,发送表单等。
1)我要抓取网站的一个列表页的内容,我要抓取的是全国医院信息内容,如下图:
2)我自然是复制了URL地址,用Snoopy类抓取前10页的内容,并将内容放到本地,在本地创建一个html文件,用于后面的分析。
$snoopy=new Snoopy();
//医院list页面
for($i = 1; $i fetch($url);
file_put_contents("web/page/$i.html", $snoopy->results);
}
echo 'success';
3)很奇怪,返回的内容不是国家内容,而是上海的相关内容
4) 后来我怀疑里面可能设置了一个cookie,然后用firebug查了一下,有一个惊人的内幕
5)请求中也放入了cookie的值,加上了一个设置语句$snoopy->cookies["_area_"],情况就大不一样了,顺利返回全国信息。
$snoopy=new Snoopy();
//医院list页面
$snoopy->cookies["_area_"] = '{"provinceId":"all","provinceName":"全国","cityId":"all","cityName":"不限"}';
for($i = 1; $i results;
}
2)使用phpQuery获取节点信息,如下图DOM结构:
使用一些phpQuery方法,结合DOM结构读取各个医院信息的URL地址。
for($i = 1; $i attr('href')); //医院详情
}
}
3)根据读取的URL地址列表,抓取指定页面。
$detailIndex = 1;
for($i = 1; $i results);
$detailIndex++;
}
}
FQ工具下载:
克服障碍.rar
演示下载:
关于 Snoopy 类的一些注意事项:
类方法
获取($URI)
snoopy php网页抓取工具(requiresPHP4Beta4+)$maxframes允许追踪的框架最大)
网站优化 • 优采云 发表了文章 • 0 个评论 • 63 次浏览 • 2022-01-29 16:00
$error 报告在哪里,如果有的话
$response_code 服务器返回的响应码
从服务器返回的 $headers 标头
$maxlength 最长返回数据长度
$read_timeout 读取超时(需要 PHP 4 Beta 4+)
设置为 0 表示没有超时
$timed_out 如果读取操作超时,此属性返回 true(需要 PHP 4 Beta 4+)
$maxframes 允许跟踪的最大帧数
$status 获取 http 状态
Web 服务器可以写入的临时文件的 $temp_dir 目录 (/tmp)
cURL二进制的$curl_path目录,如果没有cURL二进制则设置为false
以下是demojNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔法
复制代码代码如下:
包括“Snoopy.class.php”;
$snoopy = 新史努比;
$snoopy->proxy_host = "";
$snoopy->proxy_port = "8080";
$snoopy->agent = "(兼容;MSIE 4.01;MSN 2.5;AOL 4.0;Windows 98)";
$snoopy->referer = "";
$snoopy->cookies["SessionID"] = 238472834723489l;
$snoopy->cookies["favoriteColor"] = "RED";
$snoopy->rawheaders["Pragma"] = "no-cache";
$snoopy->maxredirs = 2;
$snoopy->offsiteok = false;
$snoopy->expandlinks = false;
$snoopy->user = "joe";
$snoopy->pass = "bloe";
if($snoopy->fetchtext(""))
{
回声“
".htmlspecialchars($snoopy->results)."
\n";
}
其他
echo "获取文档时出错:".$snoopy->error."\n";
////////////////////////////////////// //////////
Snoopy 的特点是“大”和“满”,一次 fetch 可以拾取一切,可以作为 采集 的第一步。接下来,您需要使用 simple_html_dom 扣除所需的部分。当然,如果你特别擅长规律,喜欢规律,也可以用规律来搭配抢。
simple_html_dom 实际上是一个 dom 解析过程。 PHP也提供了一些解析方法,不过这个simple_html_dom可以说是比较专业的一个类,满足了很多你想要的功能。
////////////////////////////////////// ///////////
// 使用URL或文件名创建目标文档对象,即目标网页
$html = file_get_html ('' );
//$html = file_get_html('test.htm');
//使用字符串作为登陆页面。可以通过Snoopy获取页面,然后在这里获取处理
$myhtml = str_get_html('jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
你好! );
// 查找所有图片并返回一个数组
foreach($html->find ('img' ) as $element)
echo $element->src 。 '
' ;
// 查找所有链接
foreach($html->find ('a') as $element)
echo $element->href 。 '
' ;
find 方法效果很好,通常它返回一个对象数组。在查找目标元素时,可以通过class或者id,或者其他属性来获取目标字符串。
//通过目标p的class属性搜索p。 find 方法中的第二个参数是返回数组中的数字。从0开始是第一个
$target_p = $html->find('p.targetclass',0 );
//检查结果是不是你想要的,直接echo就行了
回声 $target_p;
//关键是采集对象创建后一定要销毁,否则php页面可能会“卡”30秒左右,这取决于你服务器的时间限制。销毁的方法是:
$html->clear();
未设置($html);
我觉得simple_html_dom的优势在于采集和JS一样容易控制。下面提供的下载包中有英文说明书
simplehtmldom_1_11/simplehtmldom/manual/manual.htm
jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
array$e->getAllAttributes()
array$e->attr
string$e->getAttribute($name)
string$e->属性
void$e->setAttribute($name, $value)
void$value = $e->属性
bool$e->hasAttribute($name)
boolisset($e->属性)
void$e->removeAttribute ($name)
void$e->attribute=null
element$e->getElementById ($id)
mixed$e->find ("#$id", 0)
混合$e->getElementsById($id [,$index])
mixed$e->find ("#$id" [, int $index])
element$e->getElementByTagName ($name)
混合$e->查找 ($name, 0)
混合$e->getElementsByTagName ($name [, $index])
混合$e->find ($name [, int $index])
element$e->parentNode()
element$e->parent()
混合$e->childNodes ([$index])
mixed$e->children ([int $index])
element$e->firstChild()
element$e->first_child()
element$e->lastChild()
element$e->last_child ()
element$e->nextSibling()
element$e->next_sibling()
element$e->previousSibling()
element$e->prev_sibling()
jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
以上是爱站技术频道分享的PHP开发资料采集的深度解析。希望能给大家提供帮助和参考,让大家可以更从容的选择。 jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
相关资料:PHP开发中的数据深度分析采集 查看全部
snoopy php网页抓取工具(requiresPHP4Beta4+)$maxframes允许追踪的框架最大)
$error 报告在哪里,如果有的话
$response_code 服务器返回的响应码
从服务器返回的 $headers 标头
$maxlength 最长返回数据长度
$read_timeout 读取超时(需要 PHP 4 Beta 4+)
设置为 0 表示没有超时
$timed_out 如果读取操作超时,此属性返回 true(需要 PHP 4 Beta 4+)
$maxframes 允许跟踪的最大帧数
$status 获取 http 状态
Web 服务器可以写入的临时文件的 $temp_dir 目录 (/tmp)
cURL二进制的$curl_path目录,如果没有cURL二进制则设置为false
以下是demojNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔法
复制代码代码如下:
包括“Snoopy.class.php”;
$snoopy = 新史努比;
$snoopy->proxy_host = "";
$snoopy->proxy_port = "8080";
$snoopy->agent = "(兼容;MSIE 4.01;MSN 2.5;AOL 4.0;Windows 98)";
$snoopy->referer = "";
$snoopy->cookies["SessionID"] = 238472834723489l;
$snoopy->cookies["favoriteColor"] = "RED";
$snoopy->rawheaders["Pragma"] = "no-cache";
$snoopy->maxredirs = 2;
$snoopy->offsiteok = false;
$snoopy->expandlinks = false;
$snoopy->user = "joe";
$snoopy->pass = "bloe";
if($snoopy->fetchtext(""))
{
回声“
".htmlspecialchars($snoopy->results)."
\n";
}
其他
echo "获取文档时出错:".$snoopy->error."\n";
////////////////////////////////////// //////////
Snoopy 的特点是“大”和“满”,一次 fetch 可以拾取一切,可以作为 采集 的第一步。接下来,您需要使用 simple_html_dom 扣除所需的部分。当然,如果你特别擅长规律,喜欢规律,也可以用规律来搭配抢。
simple_html_dom 实际上是一个 dom 解析过程。 PHP也提供了一些解析方法,不过这个simple_html_dom可以说是比较专业的一个类,满足了很多你想要的功能。
////////////////////////////////////// ///////////
// 使用URL或文件名创建目标文档对象,即目标网页
$html = file_get_html ('' );
//$html = file_get_html('test.htm');
//使用字符串作为登陆页面。可以通过Snoopy获取页面,然后在这里获取处理
$myhtml = str_get_html('jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
你好! );
// 查找所有图片并返回一个数组
foreach($html->find ('img' ) as $element)
echo $element->src 。 '
' ;
// 查找所有链接
foreach($html->find ('a') as $element)
echo $element->href 。 '
' ;
find 方法效果很好,通常它返回一个对象数组。在查找目标元素时,可以通过class或者id,或者其他属性来获取目标字符串。
//通过目标p的class属性搜索p。 find 方法中的第二个参数是返回数组中的数字。从0开始是第一个
$target_p = $html->find('p.targetclass',0 );
//检查结果是不是你想要的,直接echo就行了
回声 $target_p;
//关键是采集对象创建后一定要销毁,否则php页面可能会“卡”30秒左右,这取决于你服务器的时间限制。销毁的方法是:
$html->clear();
未设置($html);
我觉得simple_html_dom的优势在于采集和JS一样容易控制。下面提供的下载包中有英文说明书
simplehtmldom_1_11/simplehtmldom/manual/manual.htm
jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
array$e->getAllAttributes()
array$e->attr
string$e->getAttribute($name)
string$e->属性
void$e->setAttribute($name, $value)
void$value = $e->属性
bool$e->hasAttribute($name)
boolisset($e->属性)
void$e->removeAttribute ($name)
void$e->attribute=null
element$e->getElementById ($id)
mixed$e->find ("#$id", 0)
混合$e->getElementsById($id [,$index])
mixed$e->find ("#$id" [, int $index])
element$e->getElementByTagName ($name)
混合$e->查找 ($name, 0)
混合$e->getElementsByTagName ($name [, $index])
混合$e->find ($name [, int $index])
element$e->parentNode()
element$e->parent()
混合$e->childNodes ([$index])
mixed$e->children ([int $index])
element$e->firstChild()
element$e->first_child()
element$e->lastChild()
element$e->last_child ()
element$e->nextSibling()
element$e->next_sibling()
element$e->previousSibling()
element$e->prev_sibling()
jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
以上是爱站技术频道分享的PHP开发资料采集的深度解析。希望能给大家提供帮助和参考,让大家可以更从容的选择。 jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
相关资料:PHP开发中的数据深度分析采集
snoopy php网页抓取工具(【推荐】2019Java开发者跳槽指南.pdf(吐血整理))
网站优化 • 优采云 发表了文章 • 0 个评论 • 51 次浏览 • 2022-01-24 13:04
【推荐】2019 Java开发者跳槽指南.pdf(吐血)>>>
Snoopy 是一个 php 类,它模拟浏览器获取网页内容和发送表单的功能。
下载地址:
史努比的一些特点:
1 爬取网页内容fetch
2 获取网页的文本内容(去除HTML标签)fetchtext
3 获取网页链接,form fetchlinks fetchform
4 支持代理主机
5 支持基本的用户名/密码认证
6支持设置user_agent、referer(返回)、cookies和header内容(头文件)
7支持浏览器重定向,可以控制重定向深度
8 可以将网页中的链接扩展成高质量的url(默认)
9提交数据并获取返回值
10 支持跟踪 HTML 帧
11支持重定向时传递cookie
需要php4以上就够了。既然是php的一个类,就不需要扩展支持了。服务器不支持curl时的最佳选择,
类方法:
获取($URI)
———–
这是用于抓取网页内容的方法。
$URI参数是被抓取网页的URL地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,Snoopy 将跟踪每个帧并将其存储在一个数组中,然后 $this->results。
获取文本($URI)
——————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
——————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
获取链接($URI)
——————-
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接将自动完成并转换为完整的 URL。
提交($URI,$formvars)
—————————-
此方法向 $URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
—————————–
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,登录后只返回网页的文本内容。
提交链接($URI)
——————-
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接将自动完成并转换为完整的 URL。
类属性:(括号内为默认值)
$host 要连接的主机
$port 连接端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 信息,如果有的话
$cookies cookie,如果有的话
$rawheaders 额外的标题,如果有的话
$maxredirs 最大重定向次数,0=不允许(5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否将所有链接作为完整地址完成(true)
$user 认证用户名,如果有的话
$pass 验证用户名,如果有的话 查看全部
snoopy php网页抓取工具(【推荐】2019Java开发者跳槽指南.pdf(吐血整理))
【推荐】2019 Java开发者跳槽指南.pdf(吐血)>>>
Snoopy 是一个 php 类,它模拟浏览器获取网页内容和发送表单的功能。
下载地址:
史努比的一些特点:
1 爬取网页内容fetch
2 获取网页的文本内容(去除HTML标签)fetchtext
3 获取网页链接,form fetchlinks fetchform
4 支持代理主机
5 支持基本的用户名/密码认证
6支持设置user_agent、referer(返回)、cookies和header内容(头文件)
7支持浏览器重定向,可以控制重定向深度
8 可以将网页中的链接扩展成高质量的url(默认)
9提交数据并获取返回值
10 支持跟踪 HTML 帧
11支持重定向时传递cookie
需要php4以上就够了。既然是php的一个类,就不需要扩展支持了。服务器不支持curl时的最佳选择,
类方法:
获取($URI)
———–
这是用于抓取网页内容的方法。
$URI参数是被抓取网页的URL地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,Snoopy 将跟踪每个帧并将其存储在一个数组中,然后 $this->results。
获取文本($URI)
——————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
——————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
获取链接($URI)
——————-
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接将自动完成并转换为完整的 URL。
提交($URI,$formvars)
—————————-
此方法向 $URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
—————————–
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,登录后只返回网页的文本内容。
提交链接($URI)
——————-
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接将自动完成并转换为完整的 URL。
类属性:(括号内为默认值)
$host 要连接的主机
$port 连接端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 信息,如果有的话
$cookies cookie,如果有的话
$rawheaders 额外的标题,如果有的话
$maxredirs 最大重定向次数,0=不允许(5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否将所有链接作为完整地址完成(true)
$user 认证用户名,如果有的话
$pass 验证用户名,如果有的话
snoopy php网页抓取工具(php采集利器snoopy应用[转]应用应用)
网站优化 • 优采云 发表了文章 • 0 个评论 • 100 次浏览 • 2022-01-16 09:11
php采集利器snoopy应用[转]
Snoopy 是一个 php 类,它模拟浏览器获取网页内容和发送表单的功能。
Snoopy 要求您的服务器具有 PHP 4 或更高版本,并支持 PCRE(Perl 兼容正则表达式)、基本 LAMP 服务。
下载史努比
史努比的一些特点:
1 爬取网页内容fetch
2 获取网页的文本内容(去除HTML标签)fetchtext
3 获取网页链接,form fetchlinks fetchform
4 支持代理主机
5 支持基本的用户名/密码认证
6支持设置user_agent、referer(返回)、cookies和header内容(头文件)
7支持浏览器重定向,可以控制重定向深度
8 可以将网页中的链接扩展成高质量的url(默认)
9提交数据并获取返回值
10 支持跟踪 HTML 帧
11支持重定向时传递cookie
需要php4以上就够了。既然是php的一个类,就不需要扩展支持了。服务器不支持curl时的最佳选择,
类方法:
获取($URI)
———–
这是用于抓取网页内容的方法。
$URI参数是被抓取网页的URL地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,Snoopy 将跟踪每个帧并将其存储在一个数组中,然后 $this->results。
获取文本($URI)
——————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
——————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
获取链接($URI)
——————-
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接将自动完成并转换为完整的 URL。
提交($URI,$formvars)
—————————-
此方法向 $URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
—————————–
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,登录后只返回网页的文本内容。
提交链接($URI)
——————-
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接将自动完成并转换为完整的 URL。
类属性:(括号内为默认值)
$host 要连接的主机
$port 连接端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 信息,如果有的话
$cookies cookie,如果有的话
$rawheaders 额外的标题,如果有的话
$maxredirs 最大重定向次数,0=不允许(5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否将所有链接作为完整地址完成(true)
$user 认证用户名,如果有的话
$pass 验证用户名,如果有的话 查看全部
snoopy php网页抓取工具(php采集利器snoopy应用[转]应用应用)
php采集利器snoopy应用[转]
Snoopy 是一个 php 类,它模拟浏览器获取网页内容和发送表单的功能。
Snoopy 要求您的服务器具有 PHP 4 或更高版本,并支持 PCRE(Perl 兼容正则表达式)、基本 LAMP 服务。
下载史努比
史努比的一些特点:
1 爬取网页内容fetch
2 获取网页的文本内容(去除HTML标签)fetchtext
3 获取网页链接,form fetchlinks fetchform
4 支持代理主机
5 支持基本的用户名/密码认证
6支持设置user_agent、referer(返回)、cookies和header内容(头文件)
7支持浏览器重定向,可以控制重定向深度
8 可以将网页中的链接扩展成高质量的url(默认)
9提交数据并获取返回值
10 支持跟踪 HTML 帧
11支持重定向时传递cookie
需要php4以上就够了。既然是php的一个类,就不需要扩展支持了。服务器不支持curl时的最佳选择,
类方法:
获取($URI)
———–
这是用于抓取网页内容的方法。
$URI参数是被抓取网页的URL地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,Snoopy 将跟踪每个帧并将其存储在一个数组中,然后 $this->results。
获取文本($URI)
——————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
——————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
获取链接($URI)
——————-
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接将自动完成并转换为完整的 URL。
提交($URI,$formvars)
—————————-
此方法向 $URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
—————————–
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,登录后只返回网页的文本内容。
提交链接($URI)
——————-
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接将自动完成并转换为完整的 URL。
类属性:(括号内为默认值)
$host 要连接的主机
$port 连接端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 信息,如果有的话
$cookies cookie,如果有的话
$rawheaders 额外的标题,如果有的话
$maxredirs 最大重定向次数,0=不允许(5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否将所有链接作为完整地址完成(true)
$user 认证用户名,如果有的话
$pass 验证用户名,如果有的话
snoopy php网页抓取工具(抓取前记得把php.ini中的max_time设置的大点会报错的)
网站优化 • 优采云 发表了文章 • 0 个评论 • 53 次浏览 • 2022-01-09 06:09
记得在爬之前把php.ini中的max_execution_time设置大一点,否则会报错。
一、 使用 Snoopy.class.php 抓取页面
一个很可爱的班级名字。功能也很强大。可以用来模拟浏览器的功能,可以获取网页内容并发送表单。
1 现在我要抓取网站的一个列表页的内容我要抓取的是国家医院信息内容如下图
2 我很自然的复制了URL地址,使用Snoopy类抓取前10页的页面内容,放到本地,在本地创建一个html文件进行分析。
$snoopy=new Snoopy();
//医院list页面
for($i = 1; $i fetch($url);
file_put_contents("web/page/$i.html", $snoopy->results);
}
echo 'success';
3 很奇怪,返回的内容不是全国的内容而是上海的内容
4后怀疑里面可能设置了一个cookie然后用firebug查看,里面有一个惊人的内幕
5 请求的时候,也把cookie的值放进去,加上一个设置语句$snoopy->cookies["_area_"]。情况非常不同。全国信息顺利返回。
$snoopy=new Snoopy();
//医院list页面
$snoopy->cookies["_area_"] = '{"provinceId":"all","provinceName":"全国","cityId":"all","cityName":"不限"}';
for($i = 1; $i fetch($url);
$html = $snoopy->results;
}
2 使用phpQuery获取节点信息如下图所示DOM结构
使用一些phpQuery方法结合DOM结构来读取各个医院信息的URL地址。
for($i = 1; $i attr('href')); //医院详情
}
}
3、根据读取的URL地址列表爬取指定页面。
$detailIndex = 1;
for($i = 1; $i results);
$detailIndex++;
}
}
FQ工具下载
克服障碍.rar
演示下载
史努比类的一些注意事项
类方法
获取($URI)
这是用于抓取网页内容的方法。
$URI 参数是被抓取网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,Snoopy 会将每个帧跟踪到一个数组中,然后 $this->results。
获取文本($URI)
该方法与 fetch() 方法类似,唯一不同的是该方法会移除 HTML 标签和其他不相关的数据,只返回网页中的文本内容。
获取表单($URI)
该方法与 fetch() 方法类似,唯一不同的是该方法会去除 HTML 标签等无关数据,只返回网页中的表单内容(form)。
获取链接($URI)
该方法与 fetch() 类似,唯一的区别是该方法会移除 HTML 标签和其他不相关的数据,只返回网页中的链接。
默认情况下,相对链接将自动完成为完整的 URL。
提交($URI,$formvars)
此方法向 $URL 指定的链接地址发送确认表单。$formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,登录后只返回网页的文本内容。
提交链接($URI)
该方法与 submit() 类似,唯一的区别是该方法会移除 HTML 标签和其他不相关的数据,只返回网页中的链接。
默认情况下,相对链接将自动完成为完整的 URL。
类属性
$主机
连接主机
$端口
连接端口
$proxy_host
使用的代理主机(如果有)
$proxy_port
要使用的代理主机端口(如果有)
$代理
用户代理伪装(史努比 v0.1)
$推荐人
到达信息,如果有的话
$cookies
饼干(如果有)
$原创头文件
其他标题信息(如果有)
$maxredirs
最大重定向数 0 = 不允许 (5)
$offsiteok
是否允许异地重定向。(真的)
$展开链接
是否完成链接到完整地址(true)
$用户
身份验证用户名(如果有)
$通行证
身份验证用户名(如果有)
$接受
http 接受类型(image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*)
$错误
错误在哪里,如果有的话
$response_code
服务器返回的响应码
$标头
从服务器返回的标头
$最大长度
最大返回数据长度
$read_timeout
读取操作超时(需要 PHP 4 Beta 4+)设置为 0 表示无超时
$timed_out
如果读取操作超时,则返回 true(需要 PHP 4 Beta 4+)
$最大帧数
允许跟踪的最大帧数
$状态 查看全部
snoopy php网页抓取工具(抓取前记得把php.ini中的max_time设置的大点会报错的)
记得在爬之前把php.ini中的max_execution_time设置大一点,否则会报错。
一、 使用 Snoopy.class.php 抓取页面
一个很可爱的班级名字。功能也很强大。可以用来模拟浏览器的功能,可以获取网页内容并发送表单。
1 现在我要抓取网站的一个列表页的内容我要抓取的是国家医院信息内容如下图
2 我很自然的复制了URL地址,使用Snoopy类抓取前10页的页面内容,放到本地,在本地创建一个html文件进行分析。
$snoopy=new Snoopy();
//医院list页面
for($i = 1; $i fetch($url);
file_put_contents("web/page/$i.html", $snoopy->results);
}
echo 'success';
3 很奇怪,返回的内容不是全国的内容而是上海的内容
4后怀疑里面可能设置了一个cookie然后用firebug查看,里面有一个惊人的内幕
5 请求的时候,也把cookie的值放进去,加上一个设置语句$snoopy->cookies["_area_"]。情况非常不同。全国信息顺利返回。
$snoopy=new Snoopy();
//医院list页面
$snoopy->cookies["_area_"] = '{"provinceId":"all","provinceName":"全国","cityId":"all","cityName":"不限"}';
for($i = 1; $i fetch($url);
$html = $snoopy->results;
}
2 使用phpQuery获取节点信息如下图所示DOM结构
使用一些phpQuery方法结合DOM结构来读取各个医院信息的URL地址。
for($i = 1; $i attr('href')); //医院详情
}
}
3、根据读取的URL地址列表爬取指定页面。
$detailIndex = 1;
for($i = 1; $i results);
$detailIndex++;
}
}
FQ工具下载
克服障碍.rar
演示下载
史努比类的一些注意事项
类方法
获取($URI)
这是用于抓取网页内容的方法。
$URI 参数是被抓取网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,Snoopy 会将每个帧跟踪到一个数组中,然后 $this->results。
获取文本($URI)
该方法与 fetch() 方法类似,唯一不同的是该方法会移除 HTML 标签和其他不相关的数据,只返回网页中的文本内容。
获取表单($URI)
该方法与 fetch() 方法类似,唯一不同的是该方法会去除 HTML 标签等无关数据,只返回网页中的表单内容(form)。
获取链接($URI)
该方法与 fetch() 类似,唯一的区别是该方法会移除 HTML 标签和其他不相关的数据,只返回网页中的链接。
默认情况下,相对链接将自动完成为完整的 URL。
提交($URI,$formvars)
此方法向 $URL 指定的链接地址发送确认表单。$formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,登录后只返回网页的文本内容。
提交链接($URI)
该方法与 submit() 类似,唯一的区别是该方法会移除 HTML 标签和其他不相关的数据,只返回网页中的链接。
默认情况下,相对链接将自动完成为完整的 URL。
类属性
$主机
连接主机
$端口
连接端口
$proxy_host
使用的代理主机(如果有)
$proxy_port
要使用的代理主机端口(如果有)
$代理
用户代理伪装(史努比 v0.1)
$推荐人
到达信息,如果有的话
$cookies
饼干(如果有)
$原创头文件
其他标题信息(如果有)
$maxredirs
最大重定向数 0 = 不允许 (5)
$offsiteok
是否允许异地重定向。(真的)
$展开链接
是否完成链接到完整地址(true)
$用户
身份验证用户名(如果有)
$通行证
身份验证用户名(如果有)
$接受
http 接受类型(image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*)
$错误
错误在哪里,如果有的话
$response_code
服务器返回的响应码
$标头
从服务器返回的标头
$最大长度
最大返回数据长度
$read_timeout
读取操作超时(需要 PHP 4 Beta 4+)设置为 0 表示无超时
$timed_out
如果读取操作超时,则返回 true(需要 PHP 4 Beta 4+)
$最大帧数
允许跟踪的最大帧数
$状态
snoopy php网页抓取工具(模拟浏览器获取网页内容和发送表单的方法:Snoopy($URI))
网站优化 • 优采云 发表了文章 • 0 个评论 • 65 次浏览 • 2021-12-28 23:00
Snoopy 是一个 php 集合类,用于模拟浏览器获取网页内容和发送表单。
以下是史努比的一些功能:
史努比类、方法:
获取($URI)
用于抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
这个方法和fetch()类似,唯一不同的是这个方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
类属性:(括号内为默认值)
史努比官网: 查看全部
snoopy php网页抓取工具(模拟浏览器获取网页内容和发送表单的方法:Snoopy($URI))
Snoopy 是一个 php 集合类,用于模拟浏览器获取网页内容和发送表单。
以下是史努比的一些功能:
史努比类、方法:
获取($URI)
用于抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
这个方法和fetch()类似,唯一不同的是这个方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
类属性:(括号内为默认值)
史努比官网:
snoopy php网页抓取工具(抓取前记得把php.ini中的max_execution会报错的)
网站优化 • 优采云 发表了文章 • 0 个评论 • 54 次浏览 • 2021-12-26 11:23
记得在进行爬取之前将php.ini中的max_execution_time设置为较大的值,否则会报错。
一、 使用 Snoopy.class.php 抓取页面
一个很可爱的类名。功能也非常强大。用于模拟浏览器获取网页内容和发送表单的功能。
1 现在我想抓取一个网站的列表页面的内容。我要爬取的是全国各地医院的信息。
2 我自然复制URL地址,使用Snoopy类抓取前10页的内容放到本地,在本地创建一个html文件进行分析。
$snoopy=new Snoopy();//医院列表页
for($i = 1; $i fetch($url); file_put_contents("web/page/$i.html", $snoopy->results);
} echo'success';
3 奇怪的是,返回的内容不是全国的内容而是上海的相关内容
4 怀疑可能里面设置了cookie,然后用firebug查看。果然,有一个惊人的内幕。
5 在请求中放入cookie的值,并添加设置语句$snoopy->cookies["_area_"]。情况大不相同,国家信息顺利返回。
$snoopy=new Snoopy();//医院列表页$snoopy->cookies["_area_"] ='{"provinceId":"all","provinceName":"National","cityId":"all", "cityName":"Unlimited"}';for($i = 1; $i 结果;
}
2 使用phpQuery获取节点信息,DOM结构如下图
使用一些phpQuery 方法结合DOM 结构来读取各个医院信息的URL 地址。
for($i = 1; $i attr('href')); //医院详情
}
}
3 根据读取的URL地址列表抓取指定页面。
$detailIndex = 1; for($i = 1; $i 结果); $detailIndex++;
}
}
FQ工具下载
克服障碍.rar
演示下载
史努比类的一些说明
类方法
fetch($URI) 这是用于获取网页内容的方法。$URI 参数是被爬取的网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果您正在抓取一帧,史努比将跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI) 这个方法类似于fetch()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的文本内容。fetchform($URI) 这个方法类似于fetch()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。fetchlinks($URI) 这个方法类似于fetch()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接将自动完成并转换为完整的 URL。
submit($URI,$formvars) 该方法向$URL 指定的链接地址发送确认表单。$formvars 是一个存储表单参数的数组。submittext($URI,$formvars) 这个方法类似于 submit()。唯一不同的是,该方法会去除HTML标签等无关数据,仅在登录后返回网页中的文本内容。submitlinks($URI) 这个方法类似于 submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接将自动完成并转换为完整的 URL。
类属性
$proxy_host 使用的 $host 连接的主机 $port 连接的端口 代理主机如果有 $proxy_port 使用的代理主机端口 如果有 $agent 用户代理伪装(史努比 v0.1)$ Referer 信息,如果有的话, $cookiescookies, 如果有, $rawheaders 其他头信息, 如果有, $maxredirs 最大重定向次数 0=不允许 (5)$offsiteok 是否允许异地重定向。(true) $expandlinks 是否会完成完整地址的链接 (true) $user 认证用户名,如果有的话,$pass 认证用户名,如果有的话,$accepthttp 接受类型 (image/gif, image/ x-xbitmap, image/jpeg, image/pjpeg, */ *) $error 在哪里报错,如果有的话,$response_code 服务器返回的响应码 $headers 服务器返回的头信息 $maxlength 最长返回数据长度 $read_timeout 读取操作超时(需要 PHP 4 Beta 4+)设置为 0 表示不超时 $timed_out 如果读取操作超时,该属性返回true(需要PHP 4 Beta 4+) $maxframes 允许跟踪的最大帧数 $status capture 取http状态 $temp_dir 网络服务器可以写入的临时文件目录( /tmp) $curl_path cURL 二进制文件的目录,如果没有 cURL 二进制文件,则设置为 false该属性返回true(需要PHP 4 Beta 4+) $maxframes 允许跟踪的最大帧数 $status capture 取http状态 $temp_dir 网络服务器可以写入的临时文件目录(/tmp) $ curl_path cURL binary所在的目录,如果没有cURL binary,设置为false该属性返回true(需要PHP 4 Beta 4+) $maxframes 允许跟踪的最大帧数 $status capture 取http状态 $temp_dir 网络服务器可以写入的临时文件目录(/tmp) $ curl_path cURL binary所在的目录,如果没有cURL binary,设置为false 查看全部
snoopy php网页抓取工具(抓取前记得把php.ini中的max_execution会报错的)
记得在进行爬取之前将php.ini中的max_execution_time设置为较大的值,否则会报错。
一、 使用 Snoopy.class.php 抓取页面
一个很可爱的类名。功能也非常强大。用于模拟浏览器获取网页内容和发送表单的功能。
1 现在我想抓取一个网站的列表页面的内容。我要爬取的是全国各地医院的信息。
2 我自然复制URL地址,使用Snoopy类抓取前10页的内容放到本地,在本地创建一个html文件进行分析。
$snoopy=new Snoopy();//医院列表页
for($i = 1; $i fetch($url); file_put_contents("web/page/$i.html", $snoopy->results);
} echo'success';
3 奇怪的是,返回的内容不是全国的内容而是上海的相关内容
4 怀疑可能里面设置了cookie,然后用firebug查看。果然,有一个惊人的内幕。
5 在请求中放入cookie的值,并添加设置语句$snoopy->cookies["_area_"]。情况大不相同,国家信息顺利返回。
$snoopy=new Snoopy();//医院列表页$snoopy->cookies["_area_"] ='{"provinceId":"all","provinceName":"National","cityId":"all", "cityName":"Unlimited"}';for($i = 1; $i 结果;
}
2 使用phpQuery获取节点信息,DOM结构如下图
使用一些phpQuery 方法结合DOM 结构来读取各个医院信息的URL 地址。
for($i = 1; $i attr('href')); //医院详情
}
}
3 根据读取的URL地址列表抓取指定页面。
$detailIndex = 1; for($i = 1; $i 结果); $detailIndex++;
}
}
FQ工具下载
克服障碍.rar
演示下载
史努比类的一些说明
类方法
fetch($URI) 这是用于获取网页内容的方法。$URI 参数是被爬取的网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果您正在抓取一帧,史努比将跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI) 这个方法类似于fetch()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的文本内容。fetchform($URI) 这个方法类似于fetch()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。fetchlinks($URI) 这个方法类似于fetch()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接将自动完成并转换为完整的 URL。
submit($URI,$formvars) 该方法向$URL 指定的链接地址发送确认表单。$formvars 是一个存储表单参数的数组。submittext($URI,$formvars) 这个方法类似于 submit()。唯一不同的是,该方法会去除HTML标签等无关数据,仅在登录后返回网页中的文本内容。submitlinks($URI) 这个方法类似于 submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接将自动完成并转换为完整的 URL。
类属性
$proxy_host 使用的 $host 连接的主机 $port 连接的端口 代理主机如果有 $proxy_port 使用的代理主机端口 如果有 $agent 用户代理伪装(史努比 v0.1)$ Referer 信息,如果有的话, $cookiescookies, 如果有, $rawheaders 其他头信息, 如果有, $maxredirs 最大重定向次数 0=不允许 (5)$offsiteok 是否允许异地重定向。(true) $expandlinks 是否会完成完整地址的链接 (true) $user 认证用户名,如果有的话,$pass 认证用户名,如果有的话,$accepthttp 接受类型 (image/gif, image/ x-xbitmap, image/jpeg, image/pjpeg, */ *) $error 在哪里报错,如果有的话,$response_code 服务器返回的响应码 $headers 服务器返回的头信息 $maxlength 最长返回数据长度 $read_timeout 读取操作超时(需要 PHP 4 Beta 4+)设置为 0 表示不超时 $timed_out 如果读取操作超时,该属性返回true(需要PHP 4 Beta 4+) $maxframes 允许跟踪的最大帧数 $status capture 取http状态 $temp_dir 网络服务器可以写入的临时文件目录( /tmp) $curl_path cURL 二进制文件的目录,如果没有 cURL 二进制文件,则设置为 false该属性返回true(需要PHP 4 Beta 4+) $maxframes 允许跟踪的最大帧数 $status capture 取http状态 $temp_dir 网络服务器可以写入的临时文件目录(/tmp) $ curl_path cURL binary所在的目录,如果没有cURL binary,设置为false该属性返回true(需要PHP 4 Beta 4+) $maxframes 允许跟踪的最大帧数 $status capture 取http状态 $temp_dir 网络服务器可以写入的临时文件目录(/tmp) $ curl_path cURL binary所在的目录,如果没有cURL binary,设置为false
snoopy php网页抓取工具(Snoopy的一些特点及LAMP服务都支持的服务方法)
网站优化 • 优采云 发表了文章 • 0 个评论 • 51 次浏览 • 2021-12-23 18:03
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页的内容,并发送表单。 Snoopy 需要您服务器的 PHP 版本 4 或更高版本才能正确运行,并且支持 PCRE(Perl Compatible Regular Expressions),并且支持所有基本的 LAMP 服务。
一、史努比的一些特点:
1.抓取网页抓取的内容
2.获取网页的文本内容(去除HTML标签)fetchtext
3.获取网页链接,形成fetchlinks fetchform
4.支持代理主机
5.支持基本的用户名/密码验证
6.支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7.支持浏览器重定向,控制重定向深度
8.可以将网页中的链接扩展成高质量的url(默认)
9.提交数据并获取返回值
10.支持跟踪HTML框架
11. 支持重定向时cookie的传输,php4以上就可以了。既然是php类,就不需要扩展支持了,服务器不支持curl时的最佳选择。
二、类方法:
获取($URI)
————
这是用于抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
—————-
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
———————-
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
——————————
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
—————-
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
三、类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话 查看全部
snoopy php网页抓取工具(Snoopy的一些特点及LAMP服务都支持的服务方法)
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页的内容,并发送表单。 Snoopy 需要您服务器的 PHP 版本 4 或更高版本才能正确运行,并且支持 PCRE(Perl Compatible Regular Expressions),并且支持所有基本的 LAMP 服务。
一、史努比的一些特点:
1.抓取网页抓取的内容
2.获取网页的文本内容(去除HTML标签)fetchtext
3.获取网页链接,形成fetchlinks fetchform
4.支持代理主机
5.支持基本的用户名/密码验证
6.支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7.支持浏览器重定向,控制重定向深度
8.可以将网页中的链接扩展成高质量的url(默认)
9.提交数据并获取返回值
10.支持跟踪HTML框架
11. 支持重定向时cookie的传输,php4以上就可以了。既然是php类,就不需要扩展支持了,服务器不支持curl时的最佳选择。
二、类方法:
获取($URI)
————
这是用于抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
—————-
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
———————-
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
——————————
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
—————-
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
三、类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话
snoopy php网页抓取工具(PHP模拟浏览器的特点:Snoopy(来路)、Snoopy、header)
网站优化 • 优采云 发表了文章 • 0 个评论 • 64 次浏览 • 2021-12-23 18:02
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页的内容,并发送表单。
史努比的特点:
1、抓取网页抓取的内容
2、获取网页的文本内容(去除HTML标签)fetchtext
3、获取网页链接,形成fetchlinks fetchform
4、支持代理主机
5、支持基本的用户名/密码验证
6、支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7、支持浏览器重定向,控制重定向深度
8、可以将网页中的链接扩展成高质量的url(默认)
9、提交数据并获取返回值
10、支持跟踪HTML框架
11、支持重定向时传递cookie
需要 php4 或更高版本。既然是php的一个类,就不需要扩展支持了。服务器不支持 curl 时的最佳选择。
================================================ ======================================
file_get_contents()
file_get_contents 是 fsockopen 函数的一个简单封装,效率稍低,但是爬取成功率很高,所以当 snoopy 有问题时,我通常让他来。 5.0.0 添加了对上下文的支持。借助上下文,他还可以发送标头信息,并自定义用户代理、引用者和 cookie。 5.1.0 增加了offset和maxlen参数,只能读取文件的一部分。
卷曲()
最强大的功能,几乎可以模拟浏览器的方方面面,几乎可以造假。效率也很高,支持多线程,不过需要开启curl扩展。
cURL 是一种使用 URL 语法传输文件和数据的工具。它支持多种协议,如HTTP、FTP、TELNET等。PHP还支持cURL库,我们经常使用它进行远程页面抓取和采集。
有些cms会使用curl功能,需要在服务器上启用CURL扩展。下面介绍具体方法:
1、将PHP ext目录下的三个文件:php_curl.dll、libeay32.dll和ssleay32.dll复制到系统system32目录下。
2、改变
在 php.ini 中
;extension=php_curl.dll 去掉前面的分号
3、重启 IIS 或 Apache
4、测试代码
转载于: 查看全部
snoopy php网页抓取工具(PHP模拟浏览器的特点:Snoopy(来路)、Snoopy、header)
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页的内容,并发送表单。
史努比的特点:
1、抓取网页抓取的内容
2、获取网页的文本内容(去除HTML标签)fetchtext
3、获取网页链接,形成fetchlinks fetchform
4、支持代理主机
5、支持基本的用户名/密码验证
6、支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7、支持浏览器重定向,控制重定向深度
8、可以将网页中的链接扩展成高质量的url(默认)
9、提交数据并获取返回值
10、支持跟踪HTML框架
11、支持重定向时传递cookie
需要 php4 或更高版本。既然是php的一个类,就不需要扩展支持了。服务器不支持 curl 时的最佳选择。
================================================ ======================================
file_get_contents()
file_get_contents 是 fsockopen 函数的一个简单封装,效率稍低,但是爬取成功率很高,所以当 snoopy 有问题时,我通常让他来。 5.0.0 添加了对上下文的支持。借助上下文,他还可以发送标头信息,并自定义用户代理、引用者和 cookie。 5.1.0 增加了offset和maxlen参数,只能读取文件的一部分。
卷曲()
最强大的功能,几乎可以模拟浏览器的方方面面,几乎可以造假。效率也很高,支持多线程,不过需要开启curl扩展。
cURL 是一种使用 URL 语法传输文件和数据的工具。它支持多种协议,如HTTP、FTP、TELNET等。PHP还支持cURL库,我们经常使用它进行远程页面抓取和采集。
有些cms会使用curl功能,需要在服务器上启用CURL扩展。下面介绍具体方法:
1、将PHP ext目录下的三个文件:php_curl.dll、libeay32.dll和ssleay32.dll复制到系统system32目录下。
2、改变
在 php.ini 中
;extension=php_curl.dll 去掉前面的分号
3、重启 IIS 或 Apache
4、测试代码
转载于:
snoopy php网页抓取工具( 类的方法类属性类使用方法的实例都是从本站)
网站优化 • 优采云 发表了文章 • 0 个评论 • 56 次浏览 • 2021-12-20 07:15
类的方法类属性类使用方法的实例都是从本站)
snoopy.class.php采集 模拟登录类
说到它,不得不说它的强大。你为什么这么说?我们以最常用的例子——模拟登录(当然它的功能不止这一个)。
首先有一个网页,然后我们引用它来过滤一些内容,获取我们想要的所有表单内容,然后获取登录参数,然后提交,这样我们就可以模拟登录了。
登录后,我们还可以利用其属性伪装cookie、代理、IP等信息定期发布,如留言等...
史努比类库下载地址:snoopy.class.php
类的官方下载地址
V2.0 类的版本
回到主线,我们先了解一下它的特点,掌握它的特点对我们理解它有很大的帮助!
1、方便抓取网页的内容 fetch
2、方便抓取网页的文字(去掉HTML代码)fetchtext
3、方便抓取网页的链接 fetchlinks
4、支持代理主机
5、支持基本的用户/密码认证模式
6、支持自定义用户agent,referer,cookies和header内容
7、支持浏览器转向,并能控制转向深度
8、能把网页中的链接扩展成高质量的url(默认)
9、方便提交数据并且获取返回值
10、支持跟踪HTML框架(v0.92增加)
11、支持再转向的时候传递cookies
类方法
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,$formvars)
本方法类似于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
如何使用类
以下示例均来自本站,方便大家理解。但是你在使用模拟登录的时候,应该自己下载一些例子来演示,不要用我的网站来玩,哈哈...
header("Content-type: text/html; charset=utf-8");
include_once 'Snoopy.class.php';
$snoopy = new Snoopy();
1、fetch 获取网页内容
$snoopy ->fetch('http://li-jialin.com');
echo $snoopy->results;
2、fetchtext 获取网页的所有文本内容
$snoopy ->fetchtext('http://li-jialin.com');
echo $snoopy->results;
3、fetchform 获取网页的表单内容
$snoopy ->fetchform('http://li-jialin.com');
echo $snoopy->results;
4、fetchlinks 获取网页中的所有链接
$snoopy ->fetchlinks("http://li-jialin.com");
print_r($snoopy->results);
5、提交确认表以显示网页
//模拟登录
$URI = "http://li-jialin.com/admin/login/index.html";
$formvars["username"] = "********";
$formvars["password"] = "********";
$formvars["kouling"] = "********";
$snoopy->submit($URI, $formvars);
print $snoopy->results;
6、submittext 确认表单显示文本内容
$URI = "http://li-jialin.com/admin/login/index.html";
$formvars["username"] = "********";
$formvars["password"] = "********";
$formvars["kouling"] = "********";
$snoopy->submittext($URI, $formvars);
print $snoopy->results;
7、submitlinks 确认表显示链接内容
$URI = "http://li-jialin.com/admin/login/index.html";
$formvars["username"] = "********";
$formvars["password"] = "********";
$formvars["kouling"] = "********";
$snoopy->submitlinks($URI, $formvars);
print $snoopy->results;
8、模拟IP、cookie、浏览器等。
$URI = "http://li-jialin.com/admin/login/index.html";
$formvars["username"] = "********";
$formvars["password"] = "********";
$formvars["kouling"] = "********";
//伪装
$snoopy->cookies["PHPSESSID"] = 'fc106b1918bd522cc863f36890e6fff7'; //伪装sessionid
$snoopy->agent = "(compatible; MSIE 4.01; MSN 2.5; AOL 4.0; Windows 98)"; //伪装浏览器
$snoopy->referer = "http://bbs.bfnz.cn"; //伪装来源页地址 http_referer
$snoopy->rawheaders["Pragma"] = "no-cache"; //cache 的http头信息
$snoopy->rawheaders["X_FORWARDED_FOR"] = "127.0.0.101"; //伪装ip
$snoopy->submit($URI, $formvars);
echo $snoopy->results;
其他相关文章
1、SNOOPY实现模拟登录
2、 使用PHP的Snoopy类抓图 查看全部
snoopy php网页抓取工具(
类的方法类属性类使用方法的实例都是从本站)
snoopy.class.php采集 模拟登录类
说到它,不得不说它的强大。你为什么这么说?我们以最常用的例子——模拟登录(当然它的功能不止这一个)。
首先有一个网页,然后我们引用它来过滤一些内容,获取我们想要的所有表单内容,然后获取登录参数,然后提交,这样我们就可以模拟登录了。
登录后,我们还可以利用其属性伪装cookie、代理、IP等信息定期发布,如留言等...
史努比类库下载地址:snoopy.class.php
类的官方下载地址
V2.0 类的版本
回到主线,我们先了解一下它的特点,掌握它的特点对我们理解它有很大的帮助!
1、方便抓取网页的内容 fetch
2、方便抓取网页的文字(去掉HTML代码)fetchtext
3、方便抓取网页的链接 fetchlinks
4、支持代理主机
5、支持基本的用户/密码认证模式
6、支持自定义用户agent,referer,cookies和header内容
7、支持浏览器转向,并能控制转向深度
8、能把网页中的链接扩展成高质量的url(默认)
9、方便提交数据并且获取返回值
10、支持跟踪HTML框架(v0.92增加)
11、支持再转向的时候传递cookies
类方法
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,$formvars)
本方法类似于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
如何使用类
以下示例均来自本站,方便大家理解。但是你在使用模拟登录的时候,应该自己下载一些例子来演示,不要用我的网站来玩,哈哈...
header("Content-type: text/html; charset=utf-8");
include_once 'Snoopy.class.php';
$snoopy = new Snoopy();
1、fetch 获取网页内容
$snoopy ->fetch('http://li-jialin.com');
echo $snoopy->results;
2、fetchtext 获取网页的所有文本内容
$snoopy ->fetchtext('http://li-jialin.com');
echo $snoopy->results;
3、fetchform 获取网页的表单内容
$snoopy ->fetchform('http://li-jialin.com');
echo $snoopy->results;
4、fetchlinks 获取网页中的所有链接
$snoopy ->fetchlinks("http://li-jialin.com");
print_r($snoopy->results);
5、提交确认表以显示网页
//模拟登录
$URI = "http://li-jialin.com/admin/login/index.html";
$formvars["username"] = "********";
$formvars["password"] = "********";
$formvars["kouling"] = "********";
$snoopy->submit($URI, $formvars);
print $snoopy->results;
6、submittext 确认表单显示文本内容
$URI = "http://li-jialin.com/admin/login/index.html";
$formvars["username"] = "********";
$formvars["password"] = "********";
$formvars["kouling"] = "********";
$snoopy->submittext($URI, $formvars);
print $snoopy->results;
7、submitlinks 确认表显示链接内容
$URI = "http://li-jialin.com/admin/login/index.html";
$formvars["username"] = "********";
$formvars["password"] = "********";
$formvars["kouling"] = "********";
$snoopy->submitlinks($URI, $formvars);
print $snoopy->results;
8、模拟IP、cookie、浏览器等。
$URI = "http://li-jialin.com/admin/login/index.html";
$formvars["username"] = "********";
$formvars["password"] = "********";
$formvars["kouling"] = "********";
//伪装
$snoopy->cookies["PHPSESSID"] = 'fc106b1918bd522cc863f36890e6fff7'; //伪装sessionid
$snoopy->agent = "(compatible; MSIE 4.01; MSN 2.5; AOL 4.0; Windows 98)"; //伪装浏览器
$snoopy->referer = "http://bbs.bfnz.cn"; //伪装来源页地址 http_referer
$snoopy->rawheaders["Pragma"] = "no-cache"; //cache 的http头信息
$snoopy->rawheaders["X_FORWARDED_FOR"] = "127.0.0.101"; //伪装ip
$snoopy->submit($URI, $formvars);
echo $snoopy->results;
其他相关文章
1、SNOOPY实现模拟登录
2、 使用PHP的Snoopy类抓图
snoopy php网页抓取工具(最好的选择的特点及选择的方法介绍)
网站优化 • 优采云 发表了文章 • 0 个评论 • 77 次浏览 • 2021-12-20 02:00
Snoopy 是一个 php 类,用于模拟浏览器的一些简单功能,可以获取网页内容、发送表单等操作。 Snoopy 需要您服务器的 PHP 版本 4 或更高版本才能正确运行,并且支持 PCRE(Perl Compatible Regular Expressions),并且支持所有基本的 LAMP 服务。既然是php的一类,不需要扩展支持,所以是服务器不支持curl时的最佳选择
史努比的特点:
1、抓取网页抓取的内容
2、获取网页的文本内容(去除HTML标签)fetchtext
3、获取网页链接,形成fetchlinks fetchform
4、支持代理主机
5、支持基本的用户名/密码验证
6、支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7、支持浏览器重定向,控制重定向深度
8、可以将网页中的链接扩展成高质量的url(默认)
9、提交数据并获取返回值
10、支持跟踪HTML框架
11、支持重定向时传递cookie
史努比下载链接:
史努比类方法:
获取($URI)
这是用于抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
这个方法和fetch()类似,唯一不同的是这个方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
史努比类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话 查看全部
snoopy php网页抓取工具(最好的选择的特点及选择的方法介绍)
Snoopy 是一个 php 类,用于模拟浏览器的一些简单功能,可以获取网页内容、发送表单等操作。 Snoopy 需要您服务器的 PHP 版本 4 或更高版本才能正确运行,并且支持 PCRE(Perl Compatible Regular Expressions),并且支持所有基本的 LAMP 服务。既然是php的一类,不需要扩展支持,所以是服务器不支持curl时的最佳选择
史努比的特点:
1、抓取网页抓取的内容
2、获取网页的文本内容(去除HTML标签)fetchtext
3、获取网页链接,形成fetchlinks fetchform
4、支持代理主机
5、支持基本的用户名/密码验证
6、支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7、支持浏览器重定向,控制重定向深度
8、可以将网页中的链接扩展成高质量的url(默认)
9、提交数据并获取返回值
10、支持跟踪HTML框架
11、支持重定向时传递cookie
史努比下载链接:
史努比类方法:
获取($URI)
这是用于抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
这个方法和fetch()类似,唯一不同的是这个方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
史努比类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话
snoopy php网页抓取工具(php开发工程师扩支持服务器的使用教程(一))
网站优化 • 优采云 发表了文章 • 0 个评论 • 50 次浏览 • 2021-12-13 00:31
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页内容,发送表单,可以用来开发一些采集程序和小偷程序,这个文章介绍snoopy详细使用教程。
史努比的一些特点:
抓取网页内容抓取
获取网页的文本内容(去除HTML标签)fetchtext
获取网页链接,表单获取链接获取表单
支持代理主机
支持基本的用户名/密码验证
支持设置user_agent、referer(传入路由)、cookies和header内容(头文件)
支持浏览器重定向并控制重定向深度
可以将网页中的链接扩展为高质量的网址(默认)
提交数据并获取返回值
支持跟踪 HTML 框架
支持重定向时传递cookie
需要 php4 或更高版本。既然是php类,不需要初级php开发工程师扩展支持。服务器不支持curl时的最佳选择,
史努比类方法和示例:
获取($URI)
这是用于抓取网页内容的方法。
$URI 参数是被抓取网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果你在抓一个PHP自动签入函数实现框架,Snoopy会跟踪每个框架并存入一个数组,然后存入$this->results。
fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
此方法与fetch()类似,唯一不同的是此方法会去除HTML标签等无关数据,只返回石家庄php网页(formphp扩展开发教程)中的表单内容。
fetchlinks($URI微信公众号php开发框架)
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交(
$URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
这个方法和submit()类似,唯一不同的是这个php post文件上传方法会去除HTML标签等无关数据,并且只返回登录后网页中的文本内容。
提交链接($URI)
这个方法类似于submphp插入mysql乱码it(),唯一不同的是这个方法会去掉HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
Snoopy采集Class 属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies(如果有)
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话 查看全部
snoopy php网页抓取工具(php开发工程师扩支持服务器的使用教程(一))
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页内容,发送表单,可以用来开发一些采集程序和小偷程序,这个文章介绍snoopy详细使用教程。
史努比的一些特点:
抓取网页内容抓取
获取网页的文本内容(去除HTML标签)fetchtext
获取网页链接,表单获取链接获取表单
支持代理主机
支持基本的用户名/密码验证
支持设置user_agent、referer(传入路由)、cookies和header内容(头文件)
支持浏览器重定向并控制重定向深度
可以将网页中的链接扩展为高质量的网址(默认)
提交数据并获取返回值
支持跟踪 HTML 框架
支持重定向时传递cookie
需要 php4 或更高版本。既然是php类,不需要初级php开发工程师扩展支持。服务器不支持curl时的最佳选择,
史努比类方法和示例:
获取($URI)
这是用于抓取网页内容的方法。
$URI 参数是被抓取网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果你在抓一个PHP自动签入函数实现框架,Snoopy会跟踪每个框架并存入一个数组,然后存入$this->results。
fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
此方法与fetch()类似,唯一不同的是此方法会去除HTML标签等无关数据,只返回石家庄php网页(formphp扩展开发教程)中的表单内容。
fetchlinks($URI微信公众号php开发框架)
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交(

$URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
这个方法和submit()类似,唯一不同的是这个php post文件上传方法会去除HTML标签等无关数据,并且只返回登录后网页中的文本内容。
提交链接($URI)
这个方法类似于submphp插入mysql乱码it(),唯一不同的是这个方法会去掉HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
Snoopy采集Class 属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies(如果有)
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话
snoopy php网页抓取工具(图标有个关注收藏夹输入具体的详情图片地址,才能成功)
网站优化 • 优采云 发表了文章 • 0 个评论 • 52 次浏览 • 2021-12-06 11:09
风格是这样的,只要icon有喜欢的喜欢的,基本上都是喜欢的抢夺
记住:要弄清楚类型,在单选框中,选择捕获类型才能成功
3、详细抓拍
输入图片地址的具体细节就行了,这个就不多说了,我之前下载过我的,用法都知道,下面第一个版本还没删,大家可以看看
4、索引
该索引用于分页抓取。例如,如果您下载前50 页并在中间中断,则仅保留50 页数据。重新爬行太费时间了。索引可以直接添加到索引中。例如填写50。从第50页抓取。要填写详细信息,根据分类的页数输入。
5、excel 合并
千途网抓包软件正式版使用本服务器专用下载,会生成每个excel文档,然后直接将excel文档导入下载器进行下载
一页excel,全部爬取完成后,会生成一个汇总文档。
所以如果中间断了,只取50个,后面再取50个。在所有聚合数据中,前五十页数据将丢失
这时候就可以使用这个功能了,直接合并excel就好了
切记:合并时最好将生成的数据文件全部清理干净,否则可能会出现重复数据
6、下载器
下载器功能就不多说了,说说具体的用法
1. 直接填写下载文件需要存放的路径
2.导入爬取得到的excel文档
3.点击下载
其余功能可自行研究
如果有下载失败的资源,可以点击重复下载,之前下载的资源不会被覆盖
更新日志
加入视频预览爬行
这个地址有一些视频,可以直接抓取预览视频内容
在页面上,只要有播放按钮图标,基本上就可以抓取了。
不限于这个地址,只要有播放按钮图标就可以了,可以试试 查看全部
snoopy php网页抓取工具(图标有个关注收藏夹输入具体的详情图片地址,才能成功)
风格是这样的,只要icon有喜欢的喜欢的,基本上都是喜欢的抢夺

记住:要弄清楚类型,在单选框中,选择捕获类型才能成功
3、详细抓拍
输入图片地址的具体细节就行了,这个就不多说了,我之前下载过我的,用法都知道,下面第一个版本还没删,大家可以看看
4、索引
该索引用于分页抓取。例如,如果您下载前50 页并在中间中断,则仅保留50 页数据。重新爬行太费时间了。索引可以直接添加到索引中。例如填写50。从第50页抓取。要填写详细信息,根据分类的页数输入。
5、excel 合并
千途网抓包软件正式版使用本服务器专用下载,会生成每个excel文档,然后直接将excel文档导入下载器进行下载
一页excel,全部爬取完成后,会生成一个汇总文档。
所以如果中间断了,只取50个,后面再取50个。在所有聚合数据中,前五十页数据将丢失
这时候就可以使用这个功能了,直接合并excel就好了
切记:合并时最好将生成的数据文件全部清理干净,否则可能会出现重复数据
6、下载器
下载器功能就不多说了,说说具体的用法
1. 直接填写下载文件需要存放的路径
2.导入爬取得到的excel文档
3.点击下载
其余功能可自行研究
如果有下载失败的资源,可以点击重复下载,之前下载的资源不会被覆盖
更新日志
加入视频预览爬行
这个地址有一些视频,可以直接抓取预览视频内容
在页面上,只要有播放按钮图标,基本上就可以抓取了。
不限于这个地址,只要有播放按钮图标就可以了,可以试试
snoopy php网页抓取工具(两个php采集能用到的好工具($URI))
网站优化 • 优采云 发表了文章 • 0 个评论 • 142 次浏览 • 2021-12-04 22:13
这里有两个很好的工具,php采集 可以使用。一个是史努比,另一个是 simple_html_dom。 采集方法很多(其实只有2-3种,其他都是派生出来的)。 PHP自带的几个方法也可以直接使用采集。但是,出于精神的懒惰进行到底。我们仍然可以使用这两个工具来让 采集 变得更简单。
网上有很多关于史努比的介绍,以下是别人翻译的史努比的SDK
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页的内容,并发送表单。
史努比的一些特点:
1 fetch 网页内容 fetch
2 获取网页的文本内容(去除HTML标签)fetchtext
3 获取网页链接,表单 fetchlinks fetchform
4 支持代理主机
5 支持基本的用户名/密码验证
6 支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7 支持浏览器重定向,可以控制重定向的深度
8 可以将网页中的链接扩展为高质量的url(默认)
9 提交数据并获取返回值
10支持跟踪HTML框架
11 支持重定向时传递 cookie
需要 php4 或更高版本。既然是php的一个类,就不需要扩展支持了。服务器不支持curl时的最佳选择,
类方法:
获取($URI)
这是用于抓取网页内容的方法。
$URI 参数是被抓取网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话 查看全部
snoopy php网页抓取工具(两个php采集能用到的好工具($URI))
这里有两个很好的工具,php采集 可以使用。一个是史努比,另一个是 simple_html_dom。 采集方法很多(其实只有2-3种,其他都是派生出来的)。 PHP自带的几个方法也可以直接使用采集。但是,出于精神的懒惰进行到底。我们仍然可以使用这两个工具来让 采集 变得更简单。
网上有很多关于史努比的介绍,以下是别人翻译的史努比的SDK
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页的内容,并发送表单。
史努比的一些特点:
1 fetch 网页内容 fetch
2 获取网页的文本内容(去除HTML标签)fetchtext
3 获取网页链接,表单 fetchlinks fetchform
4 支持代理主机
5 支持基本的用户名/密码验证
6 支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7 支持浏览器重定向,可以控制重定向的深度
8 可以将网页中的链接扩展为高质量的url(默认)
9 提交数据并获取返回值
10支持跟踪HTML框架
11 支持重定向时传递 cookie
需要 php4 或更高版本。既然是php的一个类,就不需要扩展支持了。服务器不支持curl时的最佳选择,
类方法:
获取($URI)
这是用于抓取网页内容的方法。
$URI 参数是被抓取网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话
snoopy php网页抓取工具(文档介绍:SnoopyPHP网页抓取工具是什么特征?)
网站优化 • 优采云 发表了文章 • 0 个评论 • 60 次浏览 • 2021-12-03 20:16
文档介绍:
史努比 PHP 网络爬虫
Snoopy 是一个 php 类,用来模仿网页浏览器的功能,可以完成获取网页内容和发送表单的任务。
以下是它的一些功能:
1、方便抓取网页内容
2、方便抓取网页文字(去掉HTML代码)
3、促进网页链接的抓取
4、支持代理主机
5、支持基本的用户/密码认证方式
6、支持自定义用户代理、引用者、cookies和标题内容
7、支持浏览器转向,可以控制转向深度
8、可以将网页中的链接扩展成高质量的url(默认)
9、方便提交数据和获取返回值
10、支持跟踪HTML框架(v0.92增加)
11、支持再次重定向时传递cookie
12、支持袜子
类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks?是否完成所有链接完成地址(true)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话 查看全部
snoopy php网页抓取工具(文档介绍:SnoopyPHP网页抓取工具是什么特征?)
文档介绍:
史努比 PHP 网络爬虫
Snoopy 是一个 php 类,用来模仿网页浏览器的功能,可以完成获取网页内容和发送表单的任务。
以下是它的一些功能:
1、方便抓取网页内容
2、方便抓取网页文字(去掉HTML代码)
3、促进网页链接的抓取
4、支持代理主机
5、支持基本的用户/密码认证方式
6、支持自定义用户代理、引用者、cookies和标题内容
7、支持浏览器转向,可以控制转向深度
8、可以将网页中的链接扩展成高质量的url(默认)
9、方便提交数据和获取返回值
10、支持跟踪HTML框架(v0.92增加)
11、支持再次重定向时传递cookie
12、支持袜子
类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks?是否完成所有链接完成地址(true)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话
snoopy php网页抓取工具(PHP类Snoopy是什么?PHP语言中功能强大的一些特点)
网站优化 • 优采云 发表了文章 • 0 个评论 • 57 次浏览 • 2021-12-01 23:14
大家都知道,在PHP语言中,有很多强大的功能可以帮助程序员完成各种功能需求。今天要给大家介绍的是PHP Snoopy的一些相关知识。
什么是 PHP 类史努比?
Snoopy 是一个 php 类,用来模仿网页浏览器的功能,可以完成获取网页内容和发送表单的任务。
PHP Snoopy 的一些特性:
* 方便抓取网页内容
* 方便抓取网页文字内容(去除HTML标签)
* 方便抓取网页链接
* 支持代理主机
* 支持基本的用户名/密码验证
* 支持设置user_agent、referer(传入路由)、cookies和header内容(头文件)
* 支持浏览器转向,可控制转向深度
* 可以将网页中的链接扩展为高质量的url(默认)
* 方便提交数据和获取返回值
* 支持跟踪 HTML 框架(v0.92 添加)
* 支持再次重定向时传递 cookie(v0.92 增加)
PHP类Snoopy的正确运行需要您服务器的PHP版本为4以上,并且支持PCRE(Perl Compatible Regular Expressions),并且支持所有基本的LAMP服务。
它提供以下接口或方法:
获取($URI)
这个方法是抓取网页的内容,$URI是要抓取的网页的网址,结果存放在$this->results中。如果抓取一帧,每一帧都会被抓取,结果保存在一个数组中。
fetchtext($URI)
该方法与fetch()大致相同,只是结果是文本,不包括HTML标签等无关信息。
fetchform($URI)
该方法只返回被抓取网页上的表单元素。
fetchlinks($URI)
该方法只返回被抓取网页上的链接。默认返回的链接都是收录域名的链接。
提交($URI,$formvars)
此方法将表单提交到指定的 $URI。 $formvars 是要传递的表单变量数组。
提交文本($URI,$formvars)
该方法与submit()基本相同,只是返回的是文本,不包括html标签等无关数据。
提交链接($URI)
此方法返回链接。
以上就是PHP Snoopy的全部内容介绍,希望对大家有帮助。 查看全部
snoopy php网页抓取工具(PHP类Snoopy是什么?PHP语言中功能强大的一些特点)
大家都知道,在PHP语言中,有很多强大的功能可以帮助程序员完成各种功能需求。今天要给大家介绍的是PHP Snoopy的一些相关知识。
什么是 PHP 类史努比?
Snoopy 是一个 php 类,用来模仿网页浏览器的功能,可以完成获取网页内容和发送表单的任务。
PHP Snoopy 的一些特性:
* 方便抓取网页内容
* 方便抓取网页文字内容(去除HTML标签)
* 方便抓取网页链接
* 支持代理主机
* 支持基本的用户名/密码验证
* 支持设置user_agent、referer(传入路由)、cookies和header内容(头文件)
* 支持浏览器转向,可控制转向深度
* 可以将网页中的链接扩展为高质量的url(默认)
* 方便提交数据和获取返回值
* 支持跟踪 HTML 框架(v0.92 添加)
* 支持再次重定向时传递 cookie(v0.92 增加)
PHP类Snoopy的正确运行需要您服务器的PHP版本为4以上,并且支持PCRE(Perl Compatible Regular Expressions),并且支持所有基本的LAMP服务。
它提供以下接口或方法:
获取($URI)
这个方法是抓取网页的内容,$URI是要抓取的网页的网址,结果存放在$this->results中。如果抓取一帧,每一帧都会被抓取,结果保存在一个数组中。
fetchtext($URI)
该方法与fetch()大致相同,只是结果是文本,不包括HTML标签等无关信息。
fetchform($URI)
该方法只返回被抓取网页上的表单元素。
fetchlinks($URI)
该方法只返回被抓取网页上的链接。默认返回的链接都是收录域名的链接。
提交($URI,$formvars)
此方法将表单提交到指定的 $URI。 $formvars 是要传递的表单变量数组。
提交文本($URI,$formvars)
该方法与submit()基本相同,只是返回的是文本,不包括html标签等无关数据。
提交链接($URI)
此方法返回链接。
以上就是PHP Snoopy的全部内容介绍,希望对大家有帮助。
snoopy php网页抓取工具(Snoopy的Snoopy服务都支持(PerlCompatibleRegularExpressionsExpressions))
网站优化 • 优采云 发表了文章 • 0 个评论 • 49 次浏览 • 2021-12-01 14:19
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页的内容并发送表单。 Snoopy 需要您服务器的 PHP 版本 4 或更高版本才能正确运行,并且支持 PCRE(Perl Compatible Regular Expressions),并且支持所有基本的 LAMP 服务。
一、史努比的一些特点:
1.抓取网页抓取的内容
2.获取网页的文本内容(去除HTML标签)fetchtext
3.获取网页链接,形成fetchlinks fetchform
4.支持代理主机
5.支持基本的用户名/密码验证
6.支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7.支持浏览器重定向,控制重定向深度
8.可以将网页中的链接扩展成高质量的url(默认)
9.提交数据并获取返回值
10.支持跟踪HTML框架
11. 需要重定向时支持cookies的传输,php4以上就可以了。既然是php类,就不需要扩展支持了,服务器不支持curl时的最佳选择。
二、类方法:
获取($URI)
————
这是用来抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
—————-
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
———————-
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
——————————
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
—————-
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
三、类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。(true)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话 查看全部
snoopy php网页抓取工具(Snoopy的Snoopy服务都支持(PerlCompatibleRegularExpressionsExpressions))
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页的内容并发送表单。 Snoopy 需要您服务器的 PHP 版本 4 或更高版本才能正确运行,并且支持 PCRE(Perl Compatible Regular Expressions),并且支持所有基本的 LAMP 服务。
一、史努比的一些特点:
1.抓取网页抓取的内容
2.获取网页的文本内容(去除HTML标签)fetchtext
3.获取网页链接,形成fetchlinks fetchform
4.支持代理主机
5.支持基本的用户名/密码验证
6.支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7.支持浏览器重定向,控制重定向深度
8.可以将网页中的链接扩展成高质量的url(默认)
9.提交数据并获取返回值
10.支持跟踪HTML框架
11. 需要重定向时支持cookies的传输,php4以上就可以了。既然是php类,就不需要扩展支持了,服务器不支持curl时的最佳选择。
二、类方法:
获取($URI)
————
这是用来抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
—————-
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
———————-
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
——————————
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
—————-
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
三、类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。(true)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话
snoopy php网页抓取工具(php一个Snoopy的功能特点及特点分析-苏州安嘉 )
网站优化 • 优采云 发表了文章 • 0 个评论 • 55 次浏览 • 2021-11-28 21:17
)
Snoopy 是一个 php 类,用来模仿网页浏览器的功能,它可以完成获取网页内容和发送表单的任务。官方网站
史努比的一些特点:
需要 php4 或更高版本。既然是PHP的一类,就不需要扩展支持,服务器不支持curl时的最佳选择。
类方法
1. fetch($uri)
这是用来抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
2. fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
3. fetchform($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
4. fetchlinks($URI)
这个方法和fetch()类似,唯一不同的是这个方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
5. 提交($URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
6. 提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
7. 提交链接($URI)
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
类属性(括号内为默认值)
演示
include "Snoopy.class.php";
$snoopy = new Snoopy;
$snoopy->proxy_host = "http://www.nowamagic.net/librarys/veda/";
$snoopy->proxy_port = "80";
$snoopy->agent = "(compatible; MSIE 4.01; MSN 2.5; AOL 4.0; Windows 98)";
$snoopy->referer = "http://www.4wei.cn";
$snoopy->cookies["SessionID"] = 238472834723489l;
$snoopy->cookies["favoriteColor"] = "RED";
$snoopy->rawheaders["Pragma"] = "no-cache";
$snoopy->maxredirs = 2;
$snoopy->offsiteok = false;
$snoopy->expandlinks = false;
$snoopy->user = "joe";
$snoopy->pass = "bloe";
if($snoopy->fetchtext("http://www.4wei.cn"))
{
echo "".htmlspecialchars($snoopy->results)."
n";}elseecho"获取文档时出错:".$snoopy->error."n";
获取指定url的内容:
表单提交:
既然已经提交了表单,就可以做很多事情了。接下来,我们将伪装ip,伪装浏览器:
原来我们可以伪装session和浏览器,伪装ip,哈哈可以做很多事情。比如带验证码,验证ip投票,可以连续投票。
ps:这里伪装ip其实就是伪装http头,所以一般通过REMOTE_ADDR获取的IP是不能伪装的,但是通过http头获取IP的(可以防止代理的那种)可以自己做IP .
关于如何验证验证码,简单说一下:首先,用普通浏览器查看页面,找到验证码对应的sessionid。同时记下sessionid和验证码值,然后用snoopy伪造。
原理:因为是同一个sessionid,所以得到的验证码和第一次输入的一样。
有时候我们可能需要锻造更多的东西,史努比完全为我们想到了:
完整示例:
/**
* You need the snoopy.class.php from
* http://snoopy.sourceforge.net/
*/
include("snoopy.class.php");
$snoopy = new Snoopy;
// need an proxy?:
//$snoopy->proxy_host = "my.proxy.host";
//$snoopy->proxy_port = "8080";
// set browser and referer:
$snoopy->agent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)";
$snoopy->referer = "http://www.jonasjohn.de/";
// set some cookies:
$snoopy->cookies["SessionID"] = '238472834723489';
$snoopy->cookies["favoriteColor"] = "blue";
// set an raw-header:
$snoopy->rawheaders["Pragma"] = "no-cache";
// set some internal variables:
$snoopy->maxredirs = 2;
$snoopy->offsiteok = false;
$snoopy->expandlinks = false;
// set username and password (optional)
//$snoopy->user = "joe";
//$snoopy->pass = "bloe";
// fetch the text of the website www.google.com:
if($snoopy->fetchtext("http://www.google.com")){
// other methods: fetch, fetchform, fetchlinks, submittext and submitlinks
// response code:
print "response code: ".$snoopy->response_code."n";
// print the headers:
print "<b>Headers:
";
while(list($key,$val) = each($snoopy->headers)){
print $key.": ".$val."
n";
}
print "
n";
// print the texts of the website:
print htmlspecialchars($snoopy->results)."n";
}
else {
print "Snoopy: error while fetching document: ".$snoopy->error."n";
}
用史努比类完成一张简单的图片采集:
<p> 查看全部
snoopy php网页抓取工具(php一个Snoopy的功能特点及特点分析-苏州安嘉
)
Snoopy 是一个 php 类,用来模仿网页浏览器的功能,它可以完成获取网页内容和发送表单的任务。官方网站
史努比的一些特点:
需要 php4 或更高版本。既然是PHP的一类,就不需要扩展支持,服务器不支持curl时的最佳选择。
类方法
1. fetch($uri)
这是用来抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
2. fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
3. fetchform($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
4. fetchlinks($URI)
这个方法和fetch()类似,唯一不同的是这个方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
5. 提交($URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
6. 提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
7. 提交链接($URI)
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
类属性(括号内为默认值)
演示
include "Snoopy.class.php";
$snoopy = new Snoopy;
$snoopy->proxy_host = "http://www.nowamagic.net/librarys/veda/";
$snoopy->proxy_port = "80";
$snoopy->agent = "(compatible; MSIE 4.01; MSN 2.5; AOL 4.0; Windows 98)";
$snoopy->referer = "http://www.4wei.cn";
$snoopy->cookies["SessionID"] = 238472834723489l;
$snoopy->cookies["favoriteColor"] = "RED";
$snoopy->rawheaders["Pragma"] = "no-cache";
$snoopy->maxredirs = 2;
$snoopy->offsiteok = false;
$snoopy->expandlinks = false;
$snoopy->user = "joe";
$snoopy->pass = "bloe";
if($snoopy->fetchtext("http://www.4wei.cn"))
{
echo "".htmlspecialchars($snoopy->results)."
n";}elseecho"获取文档时出错:".$snoopy->error."n";
获取指定url的内容:
表单提交:
既然已经提交了表单,就可以做很多事情了。接下来,我们将伪装ip,伪装浏览器:
原来我们可以伪装session和浏览器,伪装ip,哈哈可以做很多事情。比如带验证码,验证ip投票,可以连续投票。
ps:这里伪装ip其实就是伪装http头,所以一般通过REMOTE_ADDR获取的IP是不能伪装的,但是通过http头获取IP的(可以防止代理的那种)可以自己做IP .
关于如何验证验证码,简单说一下:首先,用普通浏览器查看页面,找到验证码对应的sessionid。同时记下sessionid和验证码值,然后用snoopy伪造。
原理:因为是同一个sessionid,所以得到的验证码和第一次输入的一样。
有时候我们可能需要锻造更多的东西,史努比完全为我们想到了:
完整示例:
/**
* You need the snoopy.class.php from
* http://snoopy.sourceforge.net/
*/
include("snoopy.class.php");
$snoopy = new Snoopy;
// need an proxy?:
//$snoopy->proxy_host = "my.proxy.host";
//$snoopy->proxy_port = "8080";
// set browser and referer:
$snoopy->agent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)";
$snoopy->referer = "http://www.jonasjohn.de/";
// set some cookies:
$snoopy->cookies["SessionID"] = '238472834723489';
$snoopy->cookies["favoriteColor"] = "blue";
// set an raw-header:
$snoopy->rawheaders["Pragma"] = "no-cache";
// set some internal variables:
$snoopy->maxredirs = 2;
$snoopy->offsiteok = false;
$snoopy->expandlinks = false;
// set username and password (optional)
//$snoopy->user = "joe";
//$snoopy->pass = "bloe";
// fetch the text of the website www.google.com:
if($snoopy->fetchtext("http://www.google.com")){
// other methods: fetch, fetchform, fetchlinks, submittext and submitlinks
// response code:
print "response code: ".$snoopy->response_code."n";
// print the headers:
print "<b>Headers:
";
while(list($key,$val) = each($snoopy->headers)){
print $key.": ".$val."
n";
}
print "
n";
// print the texts of the website:
print htmlspecialchars($snoopy->results)."n";
}
else {
print "Snoopy: error while fetching document: ".$snoopy->error."n";
}
用史努比类完成一张简单的图片采集:
<p>
snoopy php网页抓取工具(,snoopy强,大的,PHP,采集,类,使用,实例)
网站优化 • 优采云 发表了文章 • 0 个评论 • 133 次浏览 • 2021-11-28 17:16
snoopy强大的PHP采集类使用示例代码,snoopy,强,大,PHP,采集,类,使用,示例,代码
史努比强大的PHP采集类使用示例代码
易菜站长网站,站长之家为你整理了snoopy强大的PHP采集类使用示例代码。
下载链接:///codes/33397.html
史努比的一些特点:
1 fetch 网页内容 fetch
2 获取网页的文本内容(去除HTML标签)fetchtext
3 获取网页链接,表单 fetchlinks fetchform
4 支持代理主机
5 支持基本的用户名/密码验证
6 支持设置user_agent、referer(传入路由)、cookies和header内容(头文件)
7 支持浏览器重定向,可以控制重定向的深度
8 可以将网页中的链接扩展为高质量的url(默认)
9 提交数据并获取返回值
10 支持跟踪 HTML 框架
11 支持重定向时传递 cookie
需要 php4 或更高版本。既然是php的一个类,就不需要扩展支持了。服务器不支持curl时的最佳选择,
类方法:
获取($URI)
————
这是用来抓取网页内容的方法。
$URI 参数是被抓取网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
—————-
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
———————-
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
——————————
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
—————-
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有以上是snoopy强大的PHP采集类示例代码的详细介绍。欢迎大家对snoopy强大的PHP采集类使用示例代码内容提出宝贵意见 查看全部
snoopy php网页抓取工具(,snoopy强,大的,PHP,采集,类,使用,实例)
snoopy强大的PHP采集类使用示例代码,snoopy,强,大,PHP,采集,类,使用,示例,代码
史努比强大的PHP采集类使用示例代码
易菜站长网站,站长之家为你整理了snoopy强大的PHP采集类使用示例代码。
下载链接:///codes/33397.html
史努比的一些特点:
1 fetch 网页内容 fetch
2 获取网页的文本内容(去除HTML标签)fetchtext
3 获取网页链接,表单 fetchlinks fetchform
4 支持代理主机
5 支持基本的用户名/密码验证
6 支持设置user_agent、referer(传入路由)、cookies和header内容(头文件)
7 支持浏览器重定向,可以控制重定向的深度
8 可以将网页中的链接扩展为高质量的url(默认)
9 提交数据并获取返回值
10 支持跟踪 HTML 框架
11 支持重定向时传递 cookie
需要 php4 或更高版本。既然是php的一个类,就不需要扩展支持了。服务器不支持curl时的最佳选择,
类方法:
获取($URI)
————
这是用来抓取网页内容的方法。
$URI 参数是被抓取网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
—————-
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
———————-
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
——————————
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
—————-
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有以上是snoopy强大的PHP采集类示例代码的详细介绍。欢迎大家对snoopy强大的PHP采集类使用示例代码内容提出宝贵意见
snoopy php网页抓取工具(做过j2ee或android开发的童鞋,应该或多或少都使用过Apeache的HttpClient类库)
网站优化 • 优采云 发表了文章 • 0 个评论 • 63 次浏览 • 2022-02-05 01:16
如果你做过童鞋的j2ee或者android开发,应该多多少少用过Apeache的HttpClient类库。这个类库为我们提供了非常强大的服务端Http请求操作。在开发中使用非常方便。
最近在开发php中,也需要在服务器端发送http请求,然后再处理回客户端。
我google了一下,发现php中有这样一个类库,名字叫httpclient。我很兴奋。看了下官网,发现已经很多年没有更新了,功能好像也有限,很是失望。然后又找到了另一个类库Snoopy,这个类库我不知道,但是网上的反应还不错,所以决定用它。它的 API 使用与 Apache 的 HttpClient 有很大的不同,但仍然非常好用。并且提供了很多特殊用途的方法,比如只能抓取页面中的form表单,或者所有的链接等等。
include \'Snoopy.class.php\';
$snoopy = new Snoopy();
$snoopy->fetch("http://www.baidu.com");
echo $snoopy->results;
以上几行代码就可以轻松爬取百度的页面。
当然,当需要发送post表单时,可以使用submit方法提交数据。
同时还提供了请求头、响应头以及cookies的相关操作功能,功能非常强大。
\n";} else {echo "错误获取文档:" . $snoopy->error . "\n";}
更多操作方法可以去Snoopy的官方文档,或者直接查看源码。
此时,snoopy 只取回页面。如果您想从获取的页面中提取数据,那么它不会有太大帮助。这里又找到了一个php解析html的好工具:phpQuery,它提供了和jquery几乎一样的操作方法,并且提供了一些php的特性,熟悉jquery的童鞋,应该还是蛮好用的phpquery,连phpQuery的文档都没有已经需要了。。
使用Snoopy+PhpQuery可以轻松实现网页爬取和数据分析,非常实用。我最近也需要这个,只找到了这两个不错的类库。事实证明,java可以做的事情有很多。php也可以做到。
有兴趣的同学也可以尝试用它们制作一个简单的网络爬虫。 查看全部
snoopy php网页抓取工具(做过j2ee或android开发的童鞋,应该或多或少都使用过Apeache的HttpClient类库)
如果你做过童鞋的j2ee或者android开发,应该多多少少用过Apeache的HttpClient类库。这个类库为我们提供了非常强大的服务端Http请求操作。在开发中使用非常方便。
最近在开发php中,也需要在服务器端发送http请求,然后再处理回客户端。
我google了一下,发现php中有这样一个类库,名字叫httpclient。我很兴奋。看了下官网,发现已经很多年没有更新了,功能好像也有限,很是失望。然后又找到了另一个类库Snoopy,这个类库我不知道,但是网上的反应还不错,所以决定用它。它的 API 使用与 Apache 的 HttpClient 有很大的不同,但仍然非常好用。并且提供了很多特殊用途的方法,比如只能抓取页面中的form表单,或者所有的链接等等。
include \'Snoopy.class.php\';
$snoopy = new Snoopy();
$snoopy->fetch("http://www.baidu.com");
echo $snoopy->results;
以上几行代码就可以轻松爬取百度的页面。
当然,当需要发送post表单时,可以使用submit方法提交数据。
同时还提供了请求头、响应头以及cookies的相关操作功能,功能非常强大。
\n";} else {echo "错误获取文档:" . $snoopy->error . "\n";}
更多操作方法可以去Snoopy的官方文档,或者直接查看源码。
此时,snoopy 只取回页面。如果您想从获取的页面中提取数据,那么它不会有太大帮助。这里又找到了一个php解析html的好工具:phpQuery,它提供了和jquery几乎一样的操作方法,并且提供了一些php的特性,熟悉jquery的童鞋,应该还是蛮好用的phpquery,连phpQuery的文档都没有已经需要了。。
使用Snoopy+PhpQuery可以轻松实现网页爬取和数据分析,非常实用。我最近也需要这个,只找到了这两个不错的类库。事实证明,java可以做的事情有很多。php也可以做到。
有兴趣的同学也可以尝试用它们制作一个简单的网络爬虫。
snoopy php网页抓取工具(做抓取前,记得把php.ini中的max_execution)
网站优化 • 优采云 发表了文章 • 0 个评论 • 65 次浏览 • 2022-01-31 22:02
在做爬取之前,记得把php.ini中的max_execution_time设置大一点,否则会报错。
一、 使用 Snoopy.class.php 抓取页面
一个很可爱的班级名字。功能也很强大,用来模拟浏览器的功能,可以获取网页内容,发送表单等。
1)我要抓取网站的一个列表页的内容,我要抓取的是全国医院信息内容,如下图:
2)我自然是复制了URL地址,用Snoopy类抓取前10页的内容,并将内容放到本地,在本地创建一个html文件,用于后面的分析。
$snoopy=new Snoopy();
//医院list页面
for($i = 1; $i fetch($url);
file_put_contents("web/page/$i.html", $snoopy->results);
}
echo 'success';
3)很奇怪,返回的内容不是国家内容,而是上海的相关内容
4) 后来我怀疑里面可能设置了一个cookie,然后用firebug查了一下,有一个惊人的内幕
5)请求中也放入了cookie的值,加上了一个设置语句$snoopy->cookies["_area_"],情况就大不一样了,顺利返回全国信息。
$snoopy=new Snoopy();
//医院list页面
$snoopy->cookies["_area_"] = '{"provinceId":"all","provinceName":"全国","cityId":"all","cityName":"不限"}';
for($i = 1; $i results;
}
2)使用phpQuery获取节点信息,如下图DOM结构:
使用一些phpQuery方法,结合DOM结构读取各个医院信息的URL地址。
for($i = 1; $i attr('href')); //医院详情
}
}
3)根据读取的URL地址列表,抓取指定页面。
$detailIndex = 1;
for($i = 1; $i results);
$detailIndex++;
}
}
FQ工具下载:
克服障碍.rar
演示下载:
关于 Snoopy 类的一些注意事项:
类方法
获取($URI) 查看全部
snoopy php网页抓取工具(做抓取前,记得把php.ini中的max_execution)
在做爬取之前,记得把php.ini中的max_execution_time设置大一点,否则会报错。
一、 使用 Snoopy.class.php 抓取页面
一个很可爱的班级名字。功能也很强大,用来模拟浏览器的功能,可以获取网页内容,发送表单等。
1)我要抓取网站的一个列表页的内容,我要抓取的是全国医院信息内容,如下图:
2)我自然是复制了URL地址,用Snoopy类抓取前10页的内容,并将内容放到本地,在本地创建一个html文件,用于后面的分析。
$snoopy=new Snoopy();
//医院list页面
for($i = 1; $i fetch($url);
file_put_contents("web/page/$i.html", $snoopy->results);
}
echo 'success';
3)很奇怪,返回的内容不是国家内容,而是上海的相关内容
4) 后来我怀疑里面可能设置了一个cookie,然后用firebug查了一下,有一个惊人的内幕
5)请求中也放入了cookie的值,加上了一个设置语句$snoopy->cookies["_area_"],情况就大不一样了,顺利返回全国信息。
$snoopy=new Snoopy();
//医院list页面
$snoopy->cookies["_area_"] = '{"provinceId":"all","provinceName":"全国","cityId":"all","cityName":"不限"}';
for($i = 1; $i results;
}
2)使用phpQuery获取节点信息,如下图DOM结构:
使用一些phpQuery方法,结合DOM结构读取各个医院信息的URL地址。
for($i = 1; $i attr('href')); //医院详情
}
}
3)根据读取的URL地址列表,抓取指定页面。
$detailIndex = 1;
for($i = 1; $i results);
$detailIndex++;
}
}
FQ工具下载:
克服障碍.rar
演示下载:
关于 Snoopy 类的一些注意事项:
类方法
获取($URI)
snoopy php网页抓取工具(requiresPHP4Beta4+)$maxframes允许追踪的框架最大)
网站优化 • 优采云 发表了文章 • 0 个评论 • 63 次浏览 • 2022-01-29 16:00
$error 报告在哪里,如果有的话
$response_code 服务器返回的响应码
从服务器返回的 $headers 标头
$maxlength 最长返回数据长度
$read_timeout 读取超时(需要 PHP 4 Beta 4+)
设置为 0 表示没有超时
$timed_out 如果读取操作超时,此属性返回 true(需要 PHP 4 Beta 4+)
$maxframes 允许跟踪的最大帧数
$status 获取 http 状态
Web 服务器可以写入的临时文件的 $temp_dir 目录 (/tmp)
cURL二进制的$curl_path目录,如果没有cURL二进制则设置为false
以下是demojNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔法
复制代码代码如下:
包括“Snoopy.class.php”;
$snoopy = 新史努比;
$snoopy->proxy_host = "";
$snoopy->proxy_port = "8080";
$snoopy->agent = "(兼容;MSIE 4.01;MSN 2.5;AOL 4.0;Windows 98)";
$snoopy->referer = "";
$snoopy->cookies["SessionID"] = 238472834723489l;
$snoopy->cookies["favoriteColor"] = "RED";
$snoopy->rawheaders["Pragma"] = "no-cache";
$snoopy->maxredirs = 2;
$snoopy->offsiteok = false;
$snoopy->expandlinks = false;
$snoopy->user = "joe";
$snoopy->pass = "bloe";
if($snoopy->fetchtext(""))
{
回声“
".htmlspecialchars($snoopy->results)."
\n";
}
其他
echo "获取文档时出错:".$snoopy->error."\n";
////////////////////////////////////// //////////
Snoopy 的特点是“大”和“满”,一次 fetch 可以拾取一切,可以作为 采集 的第一步。接下来,您需要使用 simple_html_dom 扣除所需的部分。当然,如果你特别擅长规律,喜欢规律,也可以用规律来搭配抢。
simple_html_dom 实际上是一个 dom 解析过程。 PHP也提供了一些解析方法,不过这个simple_html_dom可以说是比较专业的一个类,满足了很多你想要的功能。
////////////////////////////////////// ///////////
// 使用URL或文件名创建目标文档对象,即目标网页
$html = file_get_html ('' );
//$html = file_get_html('test.htm');
//使用字符串作为登陆页面。可以通过Snoopy获取页面,然后在这里获取处理
$myhtml = str_get_html('jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
你好! );
// 查找所有图片并返回一个数组
foreach($html->find ('img' ) as $element)
echo $element->src 。 '
' ;
// 查找所有链接
foreach($html->find ('a') as $element)
echo $element->href 。 '
' ;
find 方法效果很好,通常它返回一个对象数组。在查找目标元素时,可以通过class或者id,或者其他属性来获取目标字符串。
//通过目标p的class属性搜索p。 find 方法中的第二个参数是返回数组中的数字。从0开始是第一个
$target_p = $html->find('p.targetclass',0 );
//检查结果是不是你想要的,直接echo就行了
回声 $target_p;
//关键是采集对象创建后一定要销毁,否则php页面可能会“卡”30秒左右,这取决于你服务器的时间限制。销毁的方法是:
$html->clear();
未设置($html);
我觉得simple_html_dom的优势在于采集和JS一样容易控制。下面提供的下载包中有英文说明书
simplehtmldom_1_11/simplehtmldom/manual/manual.htm
jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
array$e->getAllAttributes()
array$e->attr
string$e->getAttribute($name)
string$e->属性
void$e->setAttribute($name, $value)
void$value = $e->属性
bool$e->hasAttribute($name)
boolisset($e->属性)
void$e->removeAttribute ($name)
void$e->attribute=null
element$e->getElementById ($id)
mixed$e->find ("#$id", 0)
混合$e->getElementsById($id [,$index])
mixed$e->find ("#$id" [, int $index])
element$e->getElementByTagName ($name)
混合$e->查找 ($name, 0)
混合$e->getElementsByTagName ($name [, $index])
混合$e->find ($name [, int $index])
element$e->parentNode()
element$e->parent()
混合$e->childNodes ([$index])
mixed$e->children ([int $index])
element$e->firstChild()
element$e->first_child()
element$e->lastChild()
element$e->last_child ()
element$e->nextSibling()
element$e->next_sibling()
element$e->previousSibling()
element$e->prev_sibling()
jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
以上是爱站技术频道分享的PHP开发资料采集的深度解析。希望能给大家提供帮助和参考,让大家可以更从容的选择。 jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
相关资料:PHP开发中的数据深度分析采集 查看全部
snoopy php网页抓取工具(requiresPHP4Beta4+)$maxframes允许追踪的框架最大)
$error 报告在哪里,如果有的话
$response_code 服务器返回的响应码
从服务器返回的 $headers 标头
$maxlength 最长返回数据长度
$read_timeout 读取超时(需要 PHP 4 Beta 4+)
设置为 0 表示没有超时
$timed_out 如果读取操作超时,此属性返回 true(需要 PHP 4 Beta 4+)
$maxframes 允许跟踪的最大帧数
$status 获取 http 状态
Web 服务器可以写入的临时文件的 $temp_dir 目录 (/tmp)
cURL二进制的$curl_path目录,如果没有cURL二进制则设置为false
以下是demojNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔法
复制代码代码如下:
包括“Snoopy.class.php”;
$snoopy = 新史努比;
$snoopy->proxy_host = "";
$snoopy->proxy_port = "8080";
$snoopy->agent = "(兼容;MSIE 4.01;MSN 2.5;AOL 4.0;Windows 98)";
$snoopy->referer = "";
$snoopy->cookies["SessionID"] = 238472834723489l;
$snoopy->cookies["favoriteColor"] = "RED";
$snoopy->rawheaders["Pragma"] = "no-cache";
$snoopy->maxredirs = 2;
$snoopy->offsiteok = false;
$snoopy->expandlinks = false;
$snoopy->user = "joe";
$snoopy->pass = "bloe";
if($snoopy->fetchtext(""))
{
回声“
".htmlspecialchars($snoopy->results)."
\n";
}
其他
echo "获取文档时出错:".$snoopy->error."\n";
////////////////////////////////////// //////////
Snoopy 的特点是“大”和“满”,一次 fetch 可以拾取一切,可以作为 采集 的第一步。接下来,您需要使用 simple_html_dom 扣除所需的部分。当然,如果你特别擅长规律,喜欢规律,也可以用规律来搭配抢。
simple_html_dom 实际上是一个 dom 解析过程。 PHP也提供了一些解析方法,不过这个simple_html_dom可以说是比较专业的一个类,满足了很多你想要的功能。
////////////////////////////////////// ///////////
// 使用URL或文件名创建目标文档对象,即目标网页
$html = file_get_html ('' );
//$html = file_get_html('test.htm');
//使用字符串作为登陆页面。可以通过Snoopy获取页面,然后在这里获取处理
$myhtml = str_get_html('jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
你好! );
// 查找所有图片并返回一个数组
foreach($html->find ('img' ) as $element)
echo $element->src 。 '
' ;
// 查找所有链接
foreach($html->find ('a') as $element)
echo $element->href 。 '
' ;
find 方法效果很好,通常它返回一个对象数组。在查找目标元素时,可以通过class或者id,或者其他属性来获取目标字符串。
//通过目标p的class属性搜索p。 find 方法中的第二个参数是返回数组中的数字。从0开始是第一个
$target_p = $html->find('p.targetclass',0 );
//检查结果是不是你想要的,直接echo就行了
回声 $target_p;
//关键是采集对象创建后一定要销毁,否则php页面可能会“卡”30秒左右,这取决于你服务器的时间限制。销毁的方法是:
$html->clear();
未设置($html);
我觉得simple_html_dom的优势在于采集和JS一样容易控制。下面提供的下载包中有英文说明书
simplehtmldom_1_11/simplehtmldom/manual/manual.htm
jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
array$e->getAllAttributes()
array$e->attr
string$e->getAttribute($name)
string$e->属性
void$e->setAttribute($name, $value)
void$value = $e->属性
bool$e->hasAttribute($name)
boolisset($e->属性)
void$e->removeAttribute ($name)
void$e->attribute=null
element$e->getElementById ($id)
mixed$e->find ("#$id", 0)
混合$e->getElementsById($id [,$index])
mixed$e->find ("#$id" [, int $index])
element$e->getElementByTagName ($name)
混合$e->查找 ($name, 0)
混合$e->getElementsByTagName ($name [, $index])
混合$e->find ($name [, int $index])
element$e->parentNode()
element$e->parent()
混合$e->childNodes ([$index])
mixed$e->children ([int $index])
element$e->firstChild()
element$e->first_child()
element$e->lastChild()
element$e->last_child ()
element$e->nextSibling()
element$e->next_sibling()
element$e->previousSibling()
element$e->prev_sibling()
jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
以上是爱站技术频道分享的PHP开发资料采集的深度解析。希望能给大家提供帮助和参考,让大家可以更从容的选择。 jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
jNU网页模板,帝国cms模板,网站模板免费下载,做网站首选站长魔棒
相关资料:PHP开发中的数据深度分析采集
snoopy php网页抓取工具(【推荐】2019Java开发者跳槽指南.pdf(吐血整理))
网站优化 • 优采云 发表了文章 • 0 个评论 • 51 次浏览 • 2022-01-24 13:04
【推荐】2019 Java开发者跳槽指南.pdf(吐血)>>>
Snoopy 是一个 php 类,它模拟浏览器获取网页内容和发送表单的功能。
下载地址:
史努比的一些特点:
1 爬取网页内容fetch
2 获取网页的文本内容(去除HTML标签)fetchtext
3 获取网页链接,form fetchlinks fetchform
4 支持代理主机
5 支持基本的用户名/密码认证
6支持设置user_agent、referer(返回)、cookies和header内容(头文件)
7支持浏览器重定向,可以控制重定向深度
8 可以将网页中的链接扩展成高质量的url(默认)
9提交数据并获取返回值
10 支持跟踪 HTML 帧
11支持重定向时传递cookie
需要php4以上就够了。既然是php的一个类,就不需要扩展支持了。服务器不支持curl时的最佳选择,
类方法:
获取($URI)
———–
这是用于抓取网页内容的方法。
$URI参数是被抓取网页的URL地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,Snoopy 将跟踪每个帧并将其存储在一个数组中,然后 $this->results。
获取文本($URI)
——————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
——————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
获取链接($URI)
——————-
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接将自动完成并转换为完整的 URL。
提交($URI,$formvars)
—————————-
此方法向 $URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
—————————–
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,登录后只返回网页的文本内容。
提交链接($URI)
——————-
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接将自动完成并转换为完整的 URL。
类属性:(括号内为默认值)
$host 要连接的主机
$port 连接端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 信息,如果有的话
$cookies cookie,如果有的话
$rawheaders 额外的标题,如果有的话
$maxredirs 最大重定向次数,0=不允许(5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否将所有链接作为完整地址完成(true)
$user 认证用户名,如果有的话
$pass 验证用户名,如果有的话 查看全部
snoopy php网页抓取工具(【推荐】2019Java开发者跳槽指南.pdf(吐血整理))
【推荐】2019 Java开发者跳槽指南.pdf(吐血)>>>
Snoopy 是一个 php 类,它模拟浏览器获取网页内容和发送表单的功能。
下载地址:
史努比的一些特点:
1 爬取网页内容fetch
2 获取网页的文本内容(去除HTML标签)fetchtext
3 获取网页链接,form fetchlinks fetchform
4 支持代理主机
5 支持基本的用户名/密码认证
6支持设置user_agent、referer(返回)、cookies和header内容(头文件)
7支持浏览器重定向,可以控制重定向深度
8 可以将网页中的链接扩展成高质量的url(默认)
9提交数据并获取返回值
10 支持跟踪 HTML 帧
11支持重定向时传递cookie
需要php4以上就够了。既然是php的一个类,就不需要扩展支持了。服务器不支持curl时的最佳选择,
类方法:
获取($URI)
———–
这是用于抓取网页内容的方法。
$URI参数是被抓取网页的URL地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,Snoopy 将跟踪每个帧并将其存储在一个数组中,然后 $this->results。
获取文本($URI)
——————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
——————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
获取链接($URI)
——————-
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接将自动完成并转换为完整的 URL。
提交($URI,$formvars)
—————————-
此方法向 $URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
—————————–
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,登录后只返回网页的文本内容。
提交链接($URI)
——————-
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接将自动完成并转换为完整的 URL。
类属性:(括号内为默认值)
$host 要连接的主机
$port 连接端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 信息,如果有的话
$cookies cookie,如果有的话
$rawheaders 额外的标题,如果有的话
$maxredirs 最大重定向次数,0=不允许(5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否将所有链接作为完整地址完成(true)
$user 认证用户名,如果有的话
$pass 验证用户名,如果有的话
snoopy php网页抓取工具(php采集利器snoopy应用[转]应用应用)
网站优化 • 优采云 发表了文章 • 0 个评论 • 100 次浏览 • 2022-01-16 09:11
php采集利器snoopy应用[转]
Snoopy 是一个 php 类,它模拟浏览器获取网页内容和发送表单的功能。
Snoopy 要求您的服务器具有 PHP 4 或更高版本,并支持 PCRE(Perl 兼容正则表达式)、基本 LAMP 服务。
下载史努比
史努比的一些特点:
1 爬取网页内容fetch
2 获取网页的文本内容(去除HTML标签)fetchtext
3 获取网页链接,form fetchlinks fetchform
4 支持代理主机
5 支持基本的用户名/密码认证
6支持设置user_agent、referer(返回)、cookies和header内容(头文件)
7支持浏览器重定向,可以控制重定向深度
8 可以将网页中的链接扩展成高质量的url(默认)
9提交数据并获取返回值
10 支持跟踪 HTML 帧
11支持重定向时传递cookie
需要php4以上就够了。既然是php的一个类,就不需要扩展支持了。服务器不支持curl时的最佳选择,
类方法:
获取($URI)
———–
这是用于抓取网页内容的方法。
$URI参数是被抓取网页的URL地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,Snoopy 将跟踪每个帧并将其存储在一个数组中,然后 $this->results。
获取文本($URI)
——————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
——————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
获取链接($URI)
——————-
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接将自动完成并转换为完整的 URL。
提交($URI,$formvars)
—————————-
此方法向 $URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
—————————–
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,登录后只返回网页的文本内容。
提交链接($URI)
——————-
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接将自动完成并转换为完整的 URL。
类属性:(括号内为默认值)
$host 要连接的主机
$port 连接端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 信息,如果有的话
$cookies cookie,如果有的话
$rawheaders 额外的标题,如果有的话
$maxredirs 最大重定向次数,0=不允许(5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否将所有链接作为完整地址完成(true)
$user 认证用户名,如果有的话
$pass 验证用户名,如果有的话 查看全部
snoopy php网页抓取工具(php采集利器snoopy应用[转]应用应用)
php采集利器snoopy应用[转]
Snoopy 是一个 php 类,它模拟浏览器获取网页内容和发送表单的功能。
Snoopy 要求您的服务器具有 PHP 4 或更高版本,并支持 PCRE(Perl 兼容正则表达式)、基本 LAMP 服务。
下载史努比
史努比的一些特点:
1 爬取网页内容fetch
2 获取网页的文本内容(去除HTML标签)fetchtext
3 获取网页链接,form fetchlinks fetchform
4 支持代理主机
5 支持基本的用户名/密码认证
6支持设置user_agent、referer(返回)、cookies和header内容(头文件)
7支持浏览器重定向,可以控制重定向深度
8 可以将网页中的链接扩展成高质量的url(默认)
9提交数据并获取返回值
10 支持跟踪 HTML 帧
11支持重定向时传递cookie
需要php4以上就够了。既然是php的一个类,就不需要扩展支持了。服务器不支持curl时的最佳选择,
类方法:
获取($URI)
———–
这是用于抓取网页内容的方法。
$URI参数是被抓取网页的URL地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,Snoopy 将跟踪每个帧并将其存储在一个数组中,然后 $this->results。
获取文本($URI)
——————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
——————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
获取链接($URI)
——————-
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接将自动完成并转换为完整的 URL。
提交($URI,$formvars)
—————————-
此方法向 $URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
—————————–
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,登录后只返回网页的文本内容。
提交链接($URI)
——————-
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接将自动完成并转换为完整的 URL。
类属性:(括号内为默认值)
$host 要连接的主机
$port 连接端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 信息,如果有的话
$cookies cookie,如果有的话
$rawheaders 额外的标题,如果有的话
$maxredirs 最大重定向次数,0=不允许(5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否将所有链接作为完整地址完成(true)
$user 认证用户名,如果有的话
$pass 验证用户名,如果有的话
snoopy php网页抓取工具(抓取前记得把php.ini中的max_time设置的大点会报错的)
网站优化 • 优采云 发表了文章 • 0 个评论 • 53 次浏览 • 2022-01-09 06:09
记得在爬之前把php.ini中的max_execution_time设置大一点,否则会报错。
一、 使用 Snoopy.class.php 抓取页面
一个很可爱的班级名字。功能也很强大。可以用来模拟浏览器的功能,可以获取网页内容并发送表单。
1 现在我要抓取网站的一个列表页的内容我要抓取的是国家医院信息内容如下图
2 我很自然的复制了URL地址,使用Snoopy类抓取前10页的页面内容,放到本地,在本地创建一个html文件进行分析。
$snoopy=new Snoopy();
//医院list页面
for($i = 1; $i fetch($url);
file_put_contents("web/page/$i.html", $snoopy->results);
}
echo 'success';
3 很奇怪,返回的内容不是全国的内容而是上海的内容
4后怀疑里面可能设置了一个cookie然后用firebug查看,里面有一个惊人的内幕
5 请求的时候,也把cookie的值放进去,加上一个设置语句$snoopy->cookies["_area_"]。情况非常不同。全国信息顺利返回。
$snoopy=new Snoopy();
//医院list页面
$snoopy->cookies["_area_"] = '{"provinceId":"all","provinceName":"全国","cityId":"all","cityName":"不限"}';
for($i = 1; $i fetch($url);
$html = $snoopy->results;
}
2 使用phpQuery获取节点信息如下图所示DOM结构
使用一些phpQuery方法结合DOM结构来读取各个医院信息的URL地址。
for($i = 1; $i attr('href')); //医院详情
}
}
3、根据读取的URL地址列表爬取指定页面。
$detailIndex = 1;
for($i = 1; $i results);
$detailIndex++;
}
}
FQ工具下载
克服障碍.rar
演示下载
史努比类的一些注意事项
类方法
获取($URI)
这是用于抓取网页内容的方法。
$URI 参数是被抓取网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,Snoopy 会将每个帧跟踪到一个数组中,然后 $this->results。
获取文本($URI)
该方法与 fetch() 方法类似,唯一不同的是该方法会移除 HTML 标签和其他不相关的数据,只返回网页中的文本内容。
获取表单($URI)
该方法与 fetch() 方法类似,唯一不同的是该方法会去除 HTML 标签等无关数据,只返回网页中的表单内容(form)。
获取链接($URI)
该方法与 fetch() 类似,唯一的区别是该方法会移除 HTML 标签和其他不相关的数据,只返回网页中的链接。
默认情况下,相对链接将自动完成为完整的 URL。
提交($URI,$formvars)
此方法向 $URL 指定的链接地址发送确认表单。$formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,登录后只返回网页的文本内容。
提交链接($URI)
该方法与 submit() 类似,唯一的区别是该方法会移除 HTML 标签和其他不相关的数据,只返回网页中的链接。
默认情况下,相对链接将自动完成为完整的 URL。
类属性
$主机
连接主机
$端口
连接端口
$proxy_host
使用的代理主机(如果有)
$proxy_port
要使用的代理主机端口(如果有)
$代理
用户代理伪装(史努比 v0.1)
$推荐人
到达信息,如果有的话
$cookies
饼干(如果有)
$原创头文件
其他标题信息(如果有)
$maxredirs
最大重定向数 0 = 不允许 (5)
$offsiteok
是否允许异地重定向。(真的)
$展开链接
是否完成链接到完整地址(true)
$用户
身份验证用户名(如果有)
$通行证
身份验证用户名(如果有)
$接受
http 接受类型(image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*)
$错误
错误在哪里,如果有的话
$response_code
服务器返回的响应码
$标头
从服务器返回的标头
$最大长度
最大返回数据长度
$read_timeout
读取操作超时(需要 PHP 4 Beta 4+)设置为 0 表示无超时
$timed_out
如果读取操作超时,则返回 true(需要 PHP 4 Beta 4+)
$最大帧数
允许跟踪的最大帧数
$状态 查看全部
snoopy php网页抓取工具(抓取前记得把php.ini中的max_time设置的大点会报错的)
记得在爬之前把php.ini中的max_execution_time设置大一点,否则会报错。
一、 使用 Snoopy.class.php 抓取页面
一个很可爱的班级名字。功能也很强大。可以用来模拟浏览器的功能,可以获取网页内容并发送表单。
1 现在我要抓取网站的一个列表页的内容我要抓取的是国家医院信息内容如下图
2 我很自然的复制了URL地址,使用Snoopy类抓取前10页的页面内容,放到本地,在本地创建一个html文件进行分析。
$snoopy=new Snoopy();
//医院list页面
for($i = 1; $i fetch($url);
file_put_contents("web/page/$i.html", $snoopy->results);
}
echo 'success';
3 很奇怪,返回的内容不是全国的内容而是上海的内容
4后怀疑里面可能设置了一个cookie然后用firebug查看,里面有一个惊人的内幕
5 请求的时候,也把cookie的值放进去,加上一个设置语句$snoopy->cookies["_area_"]。情况非常不同。全国信息顺利返回。
$snoopy=new Snoopy();
//医院list页面
$snoopy->cookies["_area_"] = '{"provinceId":"all","provinceName":"全国","cityId":"all","cityName":"不限"}';
for($i = 1; $i fetch($url);
$html = $snoopy->results;
}
2 使用phpQuery获取节点信息如下图所示DOM结构
使用一些phpQuery方法结合DOM结构来读取各个医院信息的URL地址。
for($i = 1; $i attr('href')); //医院详情
}
}
3、根据读取的URL地址列表爬取指定页面。
$detailIndex = 1;
for($i = 1; $i results);
$detailIndex++;
}
}
FQ工具下载
克服障碍.rar
演示下载
史努比类的一些注意事项
类方法
获取($URI)
这是用于抓取网页内容的方法。
$URI 参数是被抓取网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,Snoopy 会将每个帧跟踪到一个数组中,然后 $this->results。
获取文本($URI)
该方法与 fetch() 方法类似,唯一不同的是该方法会移除 HTML 标签和其他不相关的数据,只返回网页中的文本内容。
获取表单($URI)
该方法与 fetch() 方法类似,唯一不同的是该方法会去除 HTML 标签等无关数据,只返回网页中的表单内容(form)。
获取链接($URI)
该方法与 fetch() 类似,唯一的区别是该方法会移除 HTML 标签和其他不相关的数据,只返回网页中的链接。
默认情况下,相对链接将自动完成为完整的 URL。
提交($URI,$formvars)
此方法向 $URL 指定的链接地址发送确认表单。$formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是该方法会去除HTML标签等无关数据,登录后只返回网页的文本内容。
提交链接($URI)
该方法与 submit() 类似,唯一的区别是该方法会移除 HTML 标签和其他不相关的数据,只返回网页中的链接。
默认情况下,相对链接将自动完成为完整的 URL。
类属性
$主机
连接主机
$端口
连接端口
$proxy_host
使用的代理主机(如果有)
$proxy_port
要使用的代理主机端口(如果有)
$代理
用户代理伪装(史努比 v0.1)
$推荐人
到达信息,如果有的话
$cookies
饼干(如果有)
$原创头文件
其他标题信息(如果有)
$maxredirs
最大重定向数 0 = 不允许 (5)
$offsiteok
是否允许异地重定向。(真的)
$展开链接
是否完成链接到完整地址(true)
$用户
身份验证用户名(如果有)
$通行证
身份验证用户名(如果有)
$接受
http 接受类型(image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*)
$错误
错误在哪里,如果有的话
$response_code
服务器返回的响应码
$标头
从服务器返回的标头
$最大长度
最大返回数据长度
$read_timeout
读取操作超时(需要 PHP 4 Beta 4+)设置为 0 表示无超时
$timed_out
如果读取操作超时,则返回 true(需要 PHP 4 Beta 4+)
$最大帧数
允许跟踪的最大帧数
$状态
snoopy php网页抓取工具(模拟浏览器获取网页内容和发送表单的方法:Snoopy($URI))
网站优化 • 优采云 发表了文章 • 0 个评论 • 65 次浏览 • 2021-12-28 23:00
Snoopy 是一个 php 集合类,用于模拟浏览器获取网页内容和发送表单。
以下是史努比的一些功能:
史努比类、方法:
获取($URI)
用于抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
这个方法和fetch()类似,唯一不同的是这个方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
类属性:(括号内为默认值)
史努比官网: 查看全部
snoopy php网页抓取工具(模拟浏览器获取网页内容和发送表单的方法:Snoopy($URI))
Snoopy 是一个 php 集合类,用于模拟浏览器获取网页内容和发送表单。
以下是史努比的一些功能:
史努比类、方法:
获取($URI)
用于抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
这个方法和fetch()类似,唯一不同的是这个方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
类属性:(括号内为默认值)
史努比官网:
snoopy php网页抓取工具(抓取前记得把php.ini中的max_execution会报错的)
网站优化 • 优采云 发表了文章 • 0 个评论 • 54 次浏览 • 2021-12-26 11:23
记得在进行爬取之前将php.ini中的max_execution_time设置为较大的值,否则会报错。
一、 使用 Snoopy.class.php 抓取页面
一个很可爱的类名。功能也非常强大。用于模拟浏览器获取网页内容和发送表单的功能。
1 现在我想抓取一个网站的列表页面的内容。我要爬取的是全国各地医院的信息。
2 我自然复制URL地址,使用Snoopy类抓取前10页的内容放到本地,在本地创建一个html文件进行分析。
$snoopy=new Snoopy();//医院列表页
for($i = 1; $i fetch($url); file_put_contents("web/page/$i.html", $snoopy->results);
} echo'success';
3 奇怪的是,返回的内容不是全国的内容而是上海的相关内容
4 怀疑可能里面设置了cookie,然后用firebug查看。果然,有一个惊人的内幕。
5 在请求中放入cookie的值,并添加设置语句$snoopy->cookies["_area_"]。情况大不相同,国家信息顺利返回。
$snoopy=new Snoopy();//医院列表页$snoopy->cookies["_area_"] ='{"provinceId":"all","provinceName":"National","cityId":"all", "cityName":"Unlimited"}';for($i = 1; $i 结果;
}
2 使用phpQuery获取节点信息,DOM结构如下图
使用一些phpQuery 方法结合DOM 结构来读取各个医院信息的URL 地址。
for($i = 1; $i attr('href')); //医院详情
}
}
3 根据读取的URL地址列表抓取指定页面。
$detailIndex = 1; for($i = 1; $i 结果); $detailIndex++;
}
}
FQ工具下载
克服障碍.rar
演示下载
史努比类的一些说明
类方法
fetch($URI) 这是用于获取网页内容的方法。$URI 参数是被爬取的网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果您正在抓取一帧,史努比将跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI) 这个方法类似于fetch()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的文本内容。fetchform($URI) 这个方法类似于fetch()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。fetchlinks($URI) 这个方法类似于fetch()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接将自动完成并转换为完整的 URL。
submit($URI,$formvars) 该方法向$URL 指定的链接地址发送确认表单。$formvars 是一个存储表单参数的数组。submittext($URI,$formvars) 这个方法类似于 submit()。唯一不同的是,该方法会去除HTML标签等无关数据,仅在登录后返回网页中的文本内容。submitlinks($URI) 这个方法类似于 submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接将自动完成并转换为完整的 URL。
类属性
$proxy_host 使用的 $host 连接的主机 $port 连接的端口 代理主机如果有 $proxy_port 使用的代理主机端口 如果有 $agent 用户代理伪装(史努比 v0.1)$ Referer 信息,如果有的话, $cookiescookies, 如果有, $rawheaders 其他头信息, 如果有, $maxredirs 最大重定向次数 0=不允许 (5)$offsiteok 是否允许异地重定向。(true) $expandlinks 是否会完成完整地址的链接 (true) $user 认证用户名,如果有的话,$pass 认证用户名,如果有的话,$accepthttp 接受类型 (image/gif, image/ x-xbitmap, image/jpeg, image/pjpeg, */ *) $error 在哪里报错,如果有的话,$response_code 服务器返回的响应码 $headers 服务器返回的头信息 $maxlength 最长返回数据长度 $read_timeout 读取操作超时(需要 PHP 4 Beta 4+)设置为 0 表示不超时 $timed_out 如果读取操作超时,该属性返回true(需要PHP 4 Beta 4+) $maxframes 允许跟踪的最大帧数 $status capture 取http状态 $temp_dir 网络服务器可以写入的临时文件目录( /tmp) $curl_path cURL 二进制文件的目录,如果没有 cURL 二进制文件,则设置为 false该属性返回true(需要PHP 4 Beta 4+) $maxframes 允许跟踪的最大帧数 $status capture 取http状态 $temp_dir 网络服务器可以写入的临时文件目录(/tmp) $ curl_path cURL binary所在的目录,如果没有cURL binary,设置为false该属性返回true(需要PHP 4 Beta 4+) $maxframes 允许跟踪的最大帧数 $status capture 取http状态 $temp_dir 网络服务器可以写入的临时文件目录(/tmp) $ curl_path cURL binary所在的目录,如果没有cURL binary,设置为false 查看全部
snoopy php网页抓取工具(抓取前记得把php.ini中的max_execution会报错的)
记得在进行爬取之前将php.ini中的max_execution_time设置为较大的值,否则会报错。
一、 使用 Snoopy.class.php 抓取页面
一个很可爱的类名。功能也非常强大。用于模拟浏览器获取网页内容和发送表单的功能。
1 现在我想抓取一个网站的列表页面的内容。我要爬取的是全国各地医院的信息。
2 我自然复制URL地址,使用Snoopy类抓取前10页的内容放到本地,在本地创建一个html文件进行分析。
$snoopy=new Snoopy();//医院列表页
for($i = 1; $i fetch($url); file_put_contents("web/page/$i.html", $snoopy->results);
} echo'success';
3 奇怪的是,返回的内容不是全国的内容而是上海的相关内容
4 怀疑可能里面设置了cookie,然后用firebug查看。果然,有一个惊人的内幕。
5 在请求中放入cookie的值,并添加设置语句$snoopy->cookies["_area_"]。情况大不相同,国家信息顺利返回。
$snoopy=new Snoopy();//医院列表页$snoopy->cookies["_area_"] ='{"provinceId":"all","provinceName":"National","cityId":"all", "cityName":"Unlimited"}';for($i = 1; $i 结果;
}
2 使用phpQuery获取节点信息,DOM结构如下图
使用一些phpQuery 方法结合DOM 结构来读取各个医院信息的URL 地址。
for($i = 1; $i attr('href')); //医院详情
}
}
3 根据读取的URL地址列表抓取指定页面。
$detailIndex = 1; for($i = 1; $i 结果); $detailIndex++;
}
}
FQ工具下载
克服障碍.rar
演示下载
史努比类的一些说明
类方法
fetch($URI) 这是用于获取网页内容的方法。$URI 参数是被爬取的网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果您正在抓取一帧,史努比将跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI) 这个方法类似于fetch()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的文本内容。fetchform($URI) 这个方法类似于fetch()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。fetchlinks($URI) 这个方法类似于fetch()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接将自动完成并转换为完整的 URL。
submit($URI,$formvars) 该方法向$URL 指定的链接地址发送确认表单。$formvars 是一个存储表单参数的数组。submittext($URI,$formvars) 这个方法类似于 submit()。唯一不同的是,该方法会去除HTML标签等无关数据,仅在登录后返回网页中的文本内容。submitlinks($URI) 这个方法类似于 submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接将自动完成并转换为完整的 URL。
类属性
$proxy_host 使用的 $host 连接的主机 $port 连接的端口 代理主机如果有 $proxy_port 使用的代理主机端口 如果有 $agent 用户代理伪装(史努比 v0.1)$ Referer 信息,如果有的话, $cookiescookies, 如果有, $rawheaders 其他头信息, 如果有, $maxredirs 最大重定向次数 0=不允许 (5)$offsiteok 是否允许异地重定向。(true) $expandlinks 是否会完成完整地址的链接 (true) $user 认证用户名,如果有的话,$pass 认证用户名,如果有的话,$accepthttp 接受类型 (image/gif, image/ x-xbitmap, image/jpeg, image/pjpeg, */ *) $error 在哪里报错,如果有的话,$response_code 服务器返回的响应码 $headers 服务器返回的头信息 $maxlength 最长返回数据长度 $read_timeout 读取操作超时(需要 PHP 4 Beta 4+)设置为 0 表示不超时 $timed_out 如果读取操作超时,该属性返回true(需要PHP 4 Beta 4+) $maxframes 允许跟踪的最大帧数 $status capture 取http状态 $temp_dir 网络服务器可以写入的临时文件目录( /tmp) $curl_path cURL 二进制文件的目录,如果没有 cURL 二进制文件,则设置为 false该属性返回true(需要PHP 4 Beta 4+) $maxframes 允许跟踪的最大帧数 $status capture 取http状态 $temp_dir 网络服务器可以写入的临时文件目录(/tmp) $ curl_path cURL binary所在的目录,如果没有cURL binary,设置为false该属性返回true(需要PHP 4 Beta 4+) $maxframes 允许跟踪的最大帧数 $status capture 取http状态 $temp_dir 网络服务器可以写入的临时文件目录(/tmp) $ curl_path cURL binary所在的目录,如果没有cURL binary,设置为false
snoopy php网页抓取工具(Snoopy的一些特点及LAMP服务都支持的服务方法)
网站优化 • 优采云 发表了文章 • 0 个评论 • 51 次浏览 • 2021-12-23 18:03
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页的内容,并发送表单。 Snoopy 需要您服务器的 PHP 版本 4 或更高版本才能正确运行,并且支持 PCRE(Perl Compatible Regular Expressions),并且支持所有基本的 LAMP 服务。
一、史努比的一些特点:
1.抓取网页抓取的内容
2.获取网页的文本内容(去除HTML标签)fetchtext
3.获取网页链接,形成fetchlinks fetchform
4.支持代理主机
5.支持基本的用户名/密码验证
6.支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7.支持浏览器重定向,控制重定向深度
8.可以将网页中的链接扩展成高质量的url(默认)
9.提交数据并获取返回值
10.支持跟踪HTML框架
11. 支持重定向时cookie的传输,php4以上就可以了。既然是php类,就不需要扩展支持了,服务器不支持curl时的最佳选择。
二、类方法:
获取($URI)
————
这是用于抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
—————-
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
———————-
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
——————————
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
—————-
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
三、类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话 查看全部
snoopy php网页抓取工具(Snoopy的一些特点及LAMP服务都支持的服务方法)
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页的内容,并发送表单。 Snoopy 需要您服务器的 PHP 版本 4 或更高版本才能正确运行,并且支持 PCRE(Perl Compatible Regular Expressions),并且支持所有基本的 LAMP 服务。
一、史努比的一些特点:
1.抓取网页抓取的内容
2.获取网页的文本内容(去除HTML标签)fetchtext
3.获取网页链接,形成fetchlinks fetchform
4.支持代理主机
5.支持基本的用户名/密码验证
6.支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7.支持浏览器重定向,控制重定向深度
8.可以将网页中的链接扩展成高质量的url(默认)
9.提交数据并获取返回值
10.支持跟踪HTML框架
11. 支持重定向时cookie的传输,php4以上就可以了。既然是php类,就不需要扩展支持了,服务器不支持curl时的最佳选择。
二、类方法:
获取($URI)
————
这是用于抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
—————-
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
———————-
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
——————————
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
—————-
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
三、类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话
snoopy php网页抓取工具(PHP模拟浏览器的特点:Snoopy(来路)、Snoopy、header)
网站优化 • 优采云 发表了文章 • 0 个评论 • 64 次浏览 • 2021-12-23 18:02
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页的内容,并发送表单。
史努比的特点:
1、抓取网页抓取的内容
2、获取网页的文本内容(去除HTML标签)fetchtext
3、获取网页链接,形成fetchlinks fetchform
4、支持代理主机
5、支持基本的用户名/密码验证
6、支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7、支持浏览器重定向,控制重定向深度
8、可以将网页中的链接扩展成高质量的url(默认)
9、提交数据并获取返回值
10、支持跟踪HTML框架
11、支持重定向时传递cookie
需要 php4 或更高版本。既然是php的一个类,就不需要扩展支持了。服务器不支持 curl 时的最佳选择。
================================================ ======================================
file_get_contents()
file_get_contents 是 fsockopen 函数的一个简单封装,效率稍低,但是爬取成功率很高,所以当 snoopy 有问题时,我通常让他来。 5.0.0 添加了对上下文的支持。借助上下文,他还可以发送标头信息,并自定义用户代理、引用者和 cookie。 5.1.0 增加了offset和maxlen参数,只能读取文件的一部分。
卷曲()
最强大的功能,几乎可以模拟浏览器的方方面面,几乎可以造假。效率也很高,支持多线程,不过需要开启curl扩展。
cURL 是一种使用 URL 语法传输文件和数据的工具。它支持多种协议,如HTTP、FTP、TELNET等。PHP还支持cURL库,我们经常使用它进行远程页面抓取和采集。
有些cms会使用curl功能,需要在服务器上启用CURL扩展。下面介绍具体方法:
1、将PHP ext目录下的三个文件:php_curl.dll、libeay32.dll和ssleay32.dll复制到系统system32目录下。
2、改变
在 php.ini 中
;extension=php_curl.dll 去掉前面的分号
3、重启 IIS 或 Apache
4、测试代码
转载于: 查看全部
snoopy php网页抓取工具(PHP模拟浏览器的特点:Snoopy(来路)、Snoopy、header)
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页的内容,并发送表单。
史努比的特点:
1、抓取网页抓取的内容
2、获取网页的文本内容(去除HTML标签)fetchtext
3、获取网页链接,形成fetchlinks fetchform
4、支持代理主机
5、支持基本的用户名/密码验证
6、支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7、支持浏览器重定向,控制重定向深度
8、可以将网页中的链接扩展成高质量的url(默认)
9、提交数据并获取返回值
10、支持跟踪HTML框架
11、支持重定向时传递cookie
需要 php4 或更高版本。既然是php的一个类,就不需要扩展支持了。服务器不支持 curl 时的最佳选择。
================================================ ======================================
file_get_contents()
file_get_contents 是 fsockopen 函数的一个简单封装,效率稍低,但是爬取成功率很高,所以当 snoopy 有问题时,我通常让他来。 5.0.0 添加了对上下文的支持。借助上下文,他还可以发送标头信息,并自定义用户代理、引用者和 cookie。 5.1.0 增加了offset和maxlen参数,只能读取文件的一部分。
卷曲()
最强大的功能,几乎可以模拟浏览器的方方面面,几乎可以造假。效率也很高,支持多线程,不过需要开启curl扩展。
cURL 是一种使用 URL 语法传输文件和数据的工具。它支持多种协议,如HTTP、FTP、TELNET等。PHP还支持cURL库,我们经常使用它进行远程页面抓取和采集。
有些cms会使用curl功能,需要在服务器上启用CURL扩展。下面介绍具体方法:
1、将PHP ext目录下的三个文件:php_curl.dll、libeay32.dll和ssleay32.dll复制到系统system32目录下。
2、改变
在 php.ini 中
;extension=php_curl.dll 去掉前面的分号
3、重启 IIS 或 Apache
4、测试代码
转载于:
snoopy php网页抓取工具( 类的方法类属性类使用方法的实例都是从本站)
网站优化 • 优采云 发表了文章 • 0 个评论 • 56 次浏览 • 2021-12-20 07:15
类的方法类属性类使用方法的实例都是从本站)
snoopy.class.php采集 模拟登录类
说到它,不得不说它的强大。你为什么这么说?我们以最常用的例子——模拟登录(当然它的功能不止这一个)。
首先有一个网页,然后我们引用它来过滤一些内容,获取我们想要的所有表单内容,然后获取登录参数,然后提交,这样我们就可以模拟登录了。
登录后,我们还可以利用其属性伪装cookie、代理、IP等信息定期发布,如留言等...
史努比类库下载地址:snoopy.class.php
类的官方下载地址
V2.0 类的版本
回到主线,我们先了解一下它的特点,掌握它的特点对我们理解它有很大的帮助!
1、方便抓取网页的内容 fetch
2、方便抓取网页的文字(去掉HTML代码)fetchtext
3、方便抓取网页的链接 fetchlinks
4、支持代理主机
5、支持基本的用户/密码认证模式
6、支持自定义用户agent,referer,cookies和header内容
7、支持浏览器转向,并能控制转向深度
8、能把网页中的链接扩展成高质量的url(默认)
9、方便提交数据并且获取返回值
10、支持跟踪HTML框架(v0.92增加)
11、支持再转向的时候传递cookies
类方法
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,$formvars)
本方法类似于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
如何使用类
以下示例均来自本站,方便大家理解。但是你在使用模拟登录的时候,应该自己下载一些例子来演示,不要用我的网站来玩,哈哈...
header("Content-type: text/html; charset=utf-8");
include_once 'Snoopy.class.php';
$snoopy = new Snoopy();
1、fetch 获取网页内容
$snoopy ->fetch('http://li-jialin.com');
echo $snoopy->results;
2、fetchtext 获取网页的所有文本内容
$snoopy ->fetchtext('http://li-jialin.com');
echo $snoopy->results;
3、fetchform 获取网页的表单内容
$snoopy ->fetchform('http://li-jialin.com');
echo $snoopy->results;
4、fetchlinks 获取网页中的所有链接
$snoopy ->fetchlinks("http://li-jialin.com");
print_r($snoopy->results);
5、提交确认表以显示网页
//模拟登录
$URI = "http://li-jialin.com/admin/login/index.html";
$formvars["username"] = "********";
$formvars["password"] = "********";
$formvars["kouling"] = "********";
$snoopy->submit($URI, $formvars);
print $snoopy->results;
6、submittext 确认表单显示文本内容
$URI = "http://li-jialin.com/admin/login/index.html";
$formvars["username"] = "********";
$formvars["password"] = "********";
$formvars["kouling"] = "********";
$snoopy->submittext($URI, $formvars);
print $snoopy->results;
7、submitlinks 确认表显示链接内容
$URI = "http://li-jialin.com/admin/login/index.html";
$formvars["username"] = "********";
$formvars["password"] = "********";
$formvars["kouling"] = "********";
$snoopy->submitlinks($URI, $formvars);
print $snoopy->results;
8、模拟IP、cookie、浏览器等。
$URI = "http://li-jialin.com/admin/login/index.html";
$formvars["username"] = "********";
$formvars["password"] = "********";
$formvars["kouling"] = "********";
//伪装
$snoopy->cookies["PHPSESSID"] = 'fc106b1918bd522cc863f36890e6fff7'; //伪装sessionid
$snoopy->agent = "(compatible; MSIE 4.01; MSN 2.5; AOL 4.0; Windows 98)"; //伪装浏览器
$snoopy->referer = "http://bbs.bfnz.cn"; //伪装来源页地址 http_referer
$snoopy->rawheaders["Pragma"] = "no-cache"; //cache 的http头信息
$snoopy->rawheaders["X_FORWARDED_FOR"] = "127.0.0.101"; //伪装ip
$snoopy->submit($URI, $formvars);
echo $snoopy->results;
其他相关文章
1、SNOOPY实现模拟登录
2、 使用PHP的Snoopy类抓图 查看全部
snoopy php网页抓取工具(
类的方法类属性类使用方法的实例都是从本站)
snoopy.class.php采集 模拟登录类
说到它,不得不说它的强大。你为什么这么说?我们以最常用的例子——模拟登录(当然它的功能不止这一个)。
首先有一个网页,然后我们引用它来过滤一些内容,获取我们想要的所有表单内容,然后获取登录参数,然后提交,这样我们就可以模拟登录了。
登录后,我们还可以利用其属性伪装cookie、代理、IP等信息定期发布,如留言等...
史努比类库下载地址:snoopy.class.php
类的官方下载地址
V2.0 类的版本
回到主线,我们先了解一下它的特点,掌握它的特点对我们理解它有很大的帮助!
1、方便抓取网页的内容 fetch
2、方便抓取网页的文字(去掉HTML代码)fetchtext
3、方便抓取网页的链接 fetchlinks
4、支持代理主机
5、支持基本的用户/密码认证模式
6、支持自定义用户agent,referer,cookies和header内容
7、支持浏览器转向,并能控制转向深度
8、能把网页中的链接扩展成高质量的url(默认)
9、方便提交数据并且获取返回值
10、支持跟踪HTML框架(v0.92增加)
11、支持再转向的时候传递cookies
类方法
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,$formvars)
本方法类似于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
如何使用类
以下示例均来自本站,方便大家理解。但是你在使用模拟登录的时候,应该自己下载一些例子来演示,不要用我的网站来玩,哈哈...
header("Content-type: text/html; charset=utf-8");
include_once 'Snoopy.class.php';
$snoopy = new Snoopy();
1、fetch 获取网页内容
$snoopy ->fetch('http://li-jialin.com');
echo $snoopy->results;
2、fetchtext 获取网页的所有文本内容
$snoopy ->fetchtext('http://li-jialin.com');
echo $snoopy->results;
3、fetchform 获取网页的表单内容
$snoopy ->fetchform('http://li-jialin.com');
echo $snoopy->results;
4、fetchlinks 获取网页中的所有链接
$snoopy ->fetchlinks("http://li-jialin.com");
print_r($snoopy->results);
5、提交确认表以显示网页
//模拟登录
$URI = "http://li-jialin.com/admin/login/index.html";
$formvars["username"] = "********";
$formvars["password"] = "********";
$formvars["kouling"] = "********";
$snoopy->submit($URI, $formvars);
print $snoopy->results;
6、submittext 确认表单显示文本内容
$URI = "http://li-jialin.com/admin/login/index.html";
$formvars["username"] = "********";
$formvars["password"] = "********";
$formvars["kouling"] = "********";
$snoopy->submittext($URI, $formvars);
print $snoopy->results;
7、submitlinks 确认表显示链接内容
$URI = "http://li-jialin.com/admin/login/index.html";
$formvars["username"] = "********";
$formvars["password"] = "********";
$formvars["kouling"] = "********";
$snoopy->submitlinks($URI, $formvars);
print $snoopy->results;
8、模拟IP、cookie、浏览器等。
$URI = "http://li-jialin.com/admin/login/index.html";
$formvars["username"] = "********";
$formvars["password"] = "********";
$formvars["kouling"] = "********";
//伪装
$snoopy->cookies["PHPSESSID"] = 'fc106b1918bd522cc863f36890e6fff7'; //伪装sessionid
$snoopy->agent = "(compatible; MSIE 4.01; MSN 2.5; AOL 4.0; Windows 98)"; //伪装浏览器
$snoopy->referer = "http://bbs.bfnz.cn"; //伪装来源页地址 http_referer
$snoopy->rawheaders["Pragma"] = "no-cache"; //cache 的http头信息
$snoopy->rawheaders["X_FORWARDED_FOR"] = "127.0.0.101"; //伪装ip
$snoopy->submit($URI, $formvars);
echo $snoopy->results;
其他相关文章
1、SNOOPY实现模拟登录
2、 使用PHP的Snoopy类抓图
snoopy php网页抓取工具(最好的选择的特点及选择的方法介绍)
网站优化 • 优采云 发表了文章 • 0 个评论 • 77 次浏览 • 2021-12-20 02:00
Snoopy 是一个 php 类,用于模拟浏览器的一些简单功能,可以获取网页内容、发送表单等操作。 Snoopy 需要您服务器的 PHP 版本 4 或更高版本才能正确运行,并且支持 PCRE(Perl Compatible Regular Expressions),并且支持所有基本的 LAMP 服务。既然是php的一类,不需要扩展支持,所以是服务器不支持curl时的最佳选择
史努比的特点:
1、抓取网页抓取的内容
2、获取网页的文本内容(去除HTML标签)fetchtext
3、获取网页链接,形成fetchlinks fetchform
4、支持代理主机
5、支持基本的用户名/密码验证
6、支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7、支持浏览器重定向,控制重定向深度
8、可以将网页中的链接扩展成高质量的url(默认)
9、提交数据并获取返回值
10、支持跟踪HTML框架
11、支持重定向时传递cookie
史努比下载链接:
史努比类方法:
获取($URI)
这是用于抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
这个方法和fetch()类似,唯一不同的是这个方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
史努比类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话 查看全部
snoopy php网页抓取工具(最好的选择的特点及选择的方法介绍)
Snoopy 是一个 php 类,用于模拟浏览器的一些简单功能,可以获取网页内容、发送表单等操作。 Snoopy 需要您服务器的 PHP 版本 4 或更高版本才能正确运行,并且支持 PCRE(Perl Compatible Regular Expressions),并且支持所有基本的 LAMP 服务。既然是php的一类,不需要扩展支持,所以是服务器不支持curl时的最佳选择
史努比的特点:
1、抓取网页抓取的内容
2、获取网页的文本内容(去除HTML标签)fetchtext
3、获取网页链接,形成fetchlinks fetchform
4、支持代理主机
5、支持基本的用户名/密码验证
6、支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7、支持浏览器重定向,控制重定向深度
8、可以将网页中的链接扩展成高质量的url(默认)
9、提交数据并获取返回值
10、支持跟踪HTML框架
11、支持重定向时传递cookie
史努比下载链接:
史努比类方法:
获取($URI)
这是用于抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
这个方法和fetch()类似,唯一不同的是这个方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
史努比类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话
snoopy php网页抓取工具(php开发工程师扩支持服务器的使用教程(一))
网站优化 • 优采云 发表了文章 • 0 个评论 • 50 次浏览 • 2021-12-13 00:31
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页内容,发送表单,可以用来开发一些采集程序和小偷程序,这个文章介绍snoopy详细使用教程。
史努比的一些特点:
抓取网页内容抓取
获取网页的文本内容(去除HTML标签)fetchtext
获取网页链接,表单获取链接获取表单
支持代理主机
支持基本的用户名/密码验证
支持设置user_agent、referer(传入路由)、cookies和header内容(头文件)
支持浏览器重定向并控制重定向深度
可以将网页中的链接扩展为高质量的网址(默认)
提交数据并获取返回值
支持跟踪 HTML 框架
支持重定向时传递cookie
需要 php4 或更高版本。既然是php类,不需要初级php开发工程师扩展支持。服务器不支持curl时的最佳选择,
史努比类方法和示例:
获取($URI)
这是用于抓取网页内容的方法。
$URI 参数是被抓取网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果你在抓一个PHP自动签入函数实现框架,Snoopy会跟踪每个框架并存入一个数组,然后存入$this->results。
fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
此方法与fetch()类似,唯一不同的是此方法会去除HTML标签等无关数据,只返回石家庄php网页(formphp扩展开发教程)中的表单内容。
fetchlinks($URI微信公众号php开发框架)
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交(
$URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
这个方法和submit()类似,唯一不同的是这个php post文件上传方法会去除HTML标签等无关数据,并且只返回登录后网页中的文本内容。
提交链接($URI)
这个方法类似于submphp插入mysql乱码it(),唯一不同的是这个方法会去掉HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
Snoopy采集Class 属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies(如果有)
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话 查看全部
snoopy php网页抓取工具(php开发工程师扩支持服务器的使用教程(一))
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页内容,发送表单,可以用来开发一些采集程序和小偷程序,这个文章介绍snoopy详细使用教程。
史努比的一些特点:
抓取网页内容抓取
获取网页的文本内容(去除HTML标签)fetchtext
获取网页链接,表单获取链接获取表单
支持代理主机
支持基本的用户名/密码验证
支持设置user_agent、referer(传入路由)、cookies和header内容(头文件)
支持浏览器重定向并控制重定向深度
可以将网页中的链接扩展为高质量的网址(默认)
提交数据并获取返回值
支持跟踪 HTML 框架
支持重定向时传递cookie
需要 php4 或更高版本。既然是php类,不需要初级php开发工程师扩展支持。服务器不支持curl时的最佳选择,
史努比类方法和示例:
获取($URI)
这是用于抓取网页内容的方法。
$URI 参数是被抓取网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果你在抓一个PHP自动签入函数实现框架,Snoopy会跟踪每个框架并存入一个数组,然后存入$this->results。
fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
此方法与fetch()类似,唯一不同的是此方法会去除HTML标签等无关数据,只返回石家庄php网页(formphp扩展开发教程)中的表单内容。
fetchlinks($URI微信公众号php开发框架)
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交(

$URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
这个方法和submit()类似,唯一不同的是这个php post文件上传方法会去除HTML标签等无关数据,并且只返回登录后网页中的文本内容。
提交链接($URI)
这个方法类似于submphp插入mysql乱码it(),唯一不同的是这个方法会去掉HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
Snoopy采集Class 属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies(如果有)
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话
snoopy php网页抓取工具(图标有个关注收藏夹输入具体的详情图片地址,才能成功)
网站优化 • 优采云 发表了文章 • 0 个评论 • 52 次浏览 • 2021-12-06 11:09
风格是这样的,只要icon有喜欢的喜欢的,基本上都是喜欢的抢夺
记住:要弄清楚类型,在单选框中,选择捕获类型才能成功
3、详细抓拍
输入图片地址的具体细节就行了,这个就不多说了,我之前下载过我的,用法都知道,下面第一个版本还没删,大家可以看看
4、索引
该索引用于分页抓取。例如,如果您下载前50 页并在中间中断,则仅保留50 页数据。重新爬行太费时间了。索引可以直接添加到索引中。例如填写50。从第50页抓取。要填写详细信息,根据分类的页数输入。
5、excel 合并
千途网抓包软件正式版使用本服务器专用下载,会生成每个excel文档,然后直接将excel文档导入下载器进行下载
一页excel,全部爬取完成后,会生成一个汇总文档。
所以如果中间断了,只取50个,后面再取50个。在所有聚合数据中,前五十页数据将丢失
这时候就可以使用这个功能了,直接合并excel就好了
切记:合并时最好将生成的数据文件全部清理干净,否则可能会出现重复数据
6、下载器
下载器功能就不多说了,说说具体的用法
1. 直接填写下载文件需要存放的路径
2.导入爬取得到的excel文档
3.点击下载
其余功能可自行研究
如果有下载失败的资源,可以点击重复下载,之前下载的资源不会被覆盖
更新日志
加入视频预览爬行
这个地址有一些视频,可以直接抓取预览视频内容
在页面上,只要有播放按钮图标,基本上就可以抓取了。
不限于这个地址,只要有播放按钮图标就可以了,可以试试 查看全部
snoopy php网页抓取工具(图标有个关注收藏夹输入具体的详情图片地址,才能成功)
风格是这样的,只要icon有喜欢的喜欢的,基本上都是喜欢的抢夺

记住:要弄清楚类型,在单选框中,选择捕获类型才能成功
3、详细抓拍
输入图片地址的具体细节就行了,这个就不多说了,我之前下载过我的,用法都知道,下面第一个版本还没删,大家可以看看
4、索引
该索引用于分页抓取。例如,如果您下载前50 页并在中间中断,则仅保留50 页数据。重新爬行太费时间了。索引可以直接添加到索引中。例如填写50。从第50页抓取。要填写详细信息,根据分类的页数输入。
5、excel 合并
千途网抓包软件正式版使用本服务器专用下载,会生成每个excel文档,然后直接将excel文档导入下载器进行下载
一页excel,全部爬取完成后,会生成一个汇总文档。
所以如果中间断了,只取50个,后面再取50个。在所有聚合数据中,前五十页数据将丢失
这时候就可以使用这个功能了,直接合并excel就好了
切记:合并时最好将生成的数据文件全部清理干净,否则可能会出现重复数据
6、下载器
下载器功能就不多说了,说说具体的用法
1. 直接填写下载文件需要存放的路径
2.导入爬取得到的excel文档
3.点击下载
其余功能可自行研究
如果有下载失败的资源,可以点击重复下载,之前下载的资源不会被覆盖
更新日志
加入视频预览爬行
这个地址有一些视频,可以直接抓取预览视频内容
在页面上,只要有播放按钮图标,基本上就可以抓取了。
不限于这个地址,只要有播放按钮图标就可以了,可以试试
snoopy php网页抓取工具(两个php采集能用到的好工具($URI))
网站优化 • 优采云 发表了文章 • 0 个评论 • 142 次浏览 • 2021-12-04 22:13
这里有两个很好的工具,php采集 可以使用。一个是史努比,另一个是 simple_html_dom。 采集方法很多(其实只有2-3种,其他都是派生出来的)。 PHP自带的几个方法也可以直接使用采集。但是,出于精神的懒惰进行到底。我们仍然可以使用这两个工具来让 采集 变得更简单。
网上有很多关于史努比的介绍,以下是别人翻译的史努比的SDK
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页的内容,并发送表单。
史努比的一些特点:
1 fetch 网页内容 fetch
2 获取网页的文本内容(去除HTML标签)fetchtext
3 获取网页链接,表单 fetchlinks fetchform
4 支持代理主机
5 支持基本的用户名/密码验证
6 支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7 支持浏览器重定向,可以控制重定向的深度
8 可以将网页中的链接扩展为高质量的url(默认)
9 提交数据并获取返回值
10支持跟踪HTML框架
11 支持重定向时传递 cookie
需要 php4 或更高版本。既然是php的一个类,就不需要扩展支持了。服务器不支持curl时的最佳选择,
类方法:
获取($URI)
这是用于抓取网页内容的方法。
$URI 参数是被抓取网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话 查看全部
snoopy php网页抓取工具(两个php采集能用到的好工具($URI))
这里有两个很好的工具,php采集 可以使用。一个是史努比,另一个是 simple_html_dom。 采集方法很多(其实只有2-3种,其他都是派生出来的)。 PHP自带的几个方法也可以直接使用采集。但是,出于精神的懒惰进行到底。我们仍然可以使用这两个工具来让 采集 变得更简单。
网上有很多关于史努比的介绍,以下是别人翻译的史努比的SDK
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页的内容,并发送表单。
史努比的一些特点:
1 fetch 网页内容 fetch
2 获取网页的文本内容(去除HTML标签)fetchtext
3 获取网页链接,表单 fetchlinks fetchform
4 支持代理主机
5 支持基本的用户名/密码验证
6 支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7 支持浏览器重定向,可以控制重定向的深度
8 可以将网页中的链接扩展为高质量的url(默认)
9 提交数据并获取返回值
10支持跟踪HTML框架
11 支持重定向时传递 cookie
需要 php4 或更高版本。既然是php的一个类,就不需要扩展支持了。服务器不支持curl时的最佳选择,
类方法:
获取($URI)
这是用于抓取网页内容的方法。
$URI 参数是被抓取网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话
snoopy php网页抓取工具(文档介绍:SnoopyPHP网页抓取工具是什么特征?)
网站优化 • 优采云 发表了文章 • 0 个评论 • 60 次浏览 • 2021-12-03 20:16
文档介绍:
史努比 PHP 网络爬虫
Snoopy 是一个 php 类,用来模仿网页浏览器的功能,可以完成获取网页内容和发送表单的任务。
以下是它的一些功能:
1、方便抓取网页内容
2、方便抓取网页文字(去掉HTML代码)
3、促进网页链接的抓取
4、支持代理主机
5、支持基本的用户/密码认证方式
6、支持自定义用户代理、引用者、cookies和标题内容
7、支持浏览器转向,可以控制转向深度
8、可以将网页中的链接扩展成高质量的url(默认)
9、方便提交数据和获取返回值
10、支持跟踪HTML框架(v0.92增加)
11、支持再次重定向时传递cookie
12、支持袜子
类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks?是否完成所有链接完成地址(true)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话 查看全部
snoopy php网页抓取工具(文档介绍:SnoopyPHP网页抓取工具是什么特征?)
文档介绍:
史努比 PHP 网络爬虫
Snoopy 是一个 php 类,用来模仿网页浏览器的功能,可以完成获取网页内容和发送表单的任务。
以下是它的一些功能:
1、方便抓取网页内容
2、方便抓取网页文字(去掉HTML代码)
3、促进网页链接的抓取
4、支持代理主机
5、支持基本的用户/密码认证方式
6、支持自定义用户代理、引用者、cookies和标题内容
7、支持浏览器转向,可以控制转向深度
8、可以将网页中的链接扩展成高质量的url(默认)
9、方便提交数据和获取返回值
10、支持跟踪HTML框架(v0.92增加)
11、支持再次重定向时传递cookie
12、支持袜子
类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks?是否完成所有链接完成地址(true)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话
snoopy php网页抓取工具(PHP类Snoopy是什么?PHP语言中功能强大的一些特点)
网站优化 • 优采云 发表了文章 • 0 个评论 • 57 次浏览 • 2021-12-01 23:14
大家都知道,在PHP语言中,有很多强大的功能可以帮助程序员完成各种功能需求。今天要给大家介绍的是PHP Snoopy的一些相关知识。
什么是 PHP 类史努比?
Snoopy 是一个 php 类,用来模仿网页浏览器的功能,可以完成获取网页内容和发送表单的任务。
PHP Snoopy 的一些特性:
* 方便抓取网页内容
* 方便抓取网页文字内容(去除HTML标签)
* 方便抓取网页链接
* 支持代理主机
* 支持基本的用户名/密码验证
* 支持设置user_agent、referer(传入路由)、cookies和header内容(头文件)
* 支持浏览器转向,可控制转向深度
* 可以将网页中的链接扩展为高质量的url(默认)
* 方便提交数据和获取返回值
* 支持跟踪 HTML 框架(v0.92 添加)
* 支持再次重定向时传递 cookie(v0.92 增加)
PHP类Snoopy的正确运行需要您服务器的PHP版本为4以上,并且支持PCRE(Perl Compatible Regular Expressions),并且支持所有基本的LAMP服务。
它提供以下接口或方法:
获取($URI)
这个方法是抓取网页的内容,$URI是要抓取的网页的网址,结果存放在$this->results中。如果抓取一帧,每一帧都会被抓取,结果保存在一个数组中。
fetchtext($URI)
该方法与fetch()大致相同,只是结果是文本,不包括HTML标签等无关信息。
fetchform($URI)
该方法只返回被抓取网页上的表单元素。
fetchlinks($URI)
该方法只返回被抓取网页上的链接。默认返回的链接都是收录域名的链接。
提交($URI,$formvars)
此方法将表单提交到指定的 $URI。 $formvars 是要传递的表单变量数组。
提交文本($URI,$formvars)
该方法与submit()基本相同,只是返回的是文本,不包括html标签等无关数据。
提交链接($URI)
此方法返回链接。
以上就是PHP Snoopy的全部内容介绍,希望对大家有帮助。 查看全部
snoopy php网页抓取工具(PHP类Snoopy是什么?PHP语言中功能强大的一些特点)
大家都知道,在PHP语言中,有很多强大的功能可以帮助程序员完成各种功能需求。今天要给大家介绍的是PHP Snoopy的一些相关知识。
什么是 PHP 类史努比?
Snoopy 是一个 php 类,用来模仿网页浏览器的功能,可以完成获取网页内容和发送表单的任务。
PHP Snoopy 的一些特性:
* 方便抓取网页内容
* 方便抓取网页文字内容(去除HTML标签)
* 方便抓取网页链接
* 支持代理主机
* 支持基本的用户名/密码验证
* 支持设置user_agent、referer(传入路由)、cookies和header内容(头文件)
* 支持浏览器转向,可控制转向深度
* 可以将网页中的链接扩展为高质量的url(默认)
* 方便提交数据和获取返回值
* 支持跟踪 HTML 框架(v0.92 添加)
* 支持再次重定向时传递 cookie(v0.92 增加)
PHP类Snoopy的正确运行需要您服务器的PHP版本为4以上,并且支持PCRE(Perl Compatible Regular Expressions),并且支持所有基本的LAMP服务。
它提供以下接口或方法:
获取($URI)
这个方法是抓取网页的内容,$URI是要抓取的网页的网址,结果存放在$this->results中。如果抓取一帧,每一帧都会被抓取,结果保存在一个数组中。
fetchtext($URI)
该方法与fetch()大致相同,只是结果是文本,不包括HTML标签等无关信息。
fetchform($URI)
该方法只返回被抓取网页上的表单元素。
fetchlinks($URI)
该方法只返回被抓取网页上的链接。默认返回的链接都是收录域名的链接。
提交($URI,$formvars)
此方法将表单提交到指定的 $URI。 $formvars 是要传递的表单变量数组。
提交文本($URI,$formvars)
该方法与submit()基本相同,只是返回的是文本,不包括html标签等无关数据。
提交链接($URI)
此方法返回链接。
以上就是PHP Snoopy的全部内容介绍,希望对大家有帮助。
snoopy php网页抓取工具(Snoopy的Snoopy服务都支持(PerlCompatibleRegularExpressionsExpressions))
网站优化 • 优采云 发表了文章 • 0 个评论 • 49 次浏览 • 2021-12-01 14:19
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页的内容并发送表单。 Snoopy 需要您服务器的 PHP 版本 4 或更高版本才能正确运行,并且支持 PCRE(Perl Compatible Regular Expressions),并且支持所有基本的 LAMP 服务。
一、史努比的一些特点:
1.抓取网页抓取的内容
2.获取网页的文本内容(去除HTML标签)fetchtext
3.获取网页链接,形成fetchlinks fetchform
4.支持代理主机
5.支持基本的用户名/密码验证
6.支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7.支持浏览器重定向,控制重定向深度
8.可以将网页中的链接扩展成高质量的url(默认)
9.提交数据并获取返回值
10.支持跟踪HTML框架
11. 需要重定向时支持cookies的传输,php4以上就可以了。既然是php类,就不需要扩展支持了,服务器不支持curl时的最佳选择。
二、类方法:
获取($URI)
————
这是用来抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
—————-
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
———————-
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
——————————
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
—————-
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
三、类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。(true)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话 查看全部
snoopy php网页抓取工具(Snoopy的Snoopy服务都支持(PerlCompatibleRegularExpressionsExpressions))
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页的内容并发送表单。 Snoopy 需要您服务器的 PHP 版本 4 或更高版本才能正确运行,并且支持 PCRE(Perl Compatible Regular Expressions),并且支持所有基本的 LAMP 服务。
一、史努比的一些特点:
1.抓取网页抓取的内容
2.获取网页的文本内容(去除HTML标签)fetchtext
3.获取网页链接,形成fetchlinks fetchform
4.支持代理主机
5.支持基本的用户名/密码验证
6.支持设置user_agent、referer(来源)、cookies和header内容(头文件)
7.支持浏览器重定向,控制重定向深度
8.可以将网页中的链接扩展成高质量的url(默认)
9.提交数据并获取返回值
10.支持跟踪HTML框架
11. 需要重定向时支持cookies的传输,php4以上就可以了。既然是php类,就不需要扩展支持了,服务器不支持curl时的最佳选择。
二、类方法:
获取($URI)
————
这是用来抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
—————-
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
———————-
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
——————————
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
—————-
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
三、类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。(true)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有的话
snoopy php网页抓取工具(php一个Snoopy的功能特点及特点分析-苏州安嘉 )
网站优化 • 优采云 发表了文章 • 0 个评论 • 55 次浏览 • 2021-11-28 21:17
)
Snoopy 是一个 php 类,用来模仿网页浏览器的功能,它可以完成获取网页内容和发送表单的任务。官方网站
史努比的一些特点:
需要 php4 或更高版本。既然是PHP的一类,就不需要扩展支持,服务器不支持curl时的最佳选择。
类方法
1. fetch($uri)
这是用来抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
2. fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
3. fetchform($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
4. fetchlinks($URI)
这个方法和fetch()类似,唯一不同的是这个方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
5. 提交($URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
6. 提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
7. 提交链接($URI)
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
类属性(括号内为默认值)
演示
include "Snoopy.class.php";
$snoopy = new Snoopy;
$snoopy->proxy_host = "http://www.nowamagic.net/librarys/veda/";
$snoopy->proxy_port = "80";
$snoopy->agent = "(compatible; MSIE 4.01; MSN 2.5; AOL 4.0; Windows 98)";
$snoopy->referer = "http://www.4wei.cn";
$snoopy->cookies["SessionID"] = 238472834723489l;
$snoopy->cookies["favoriteColor"] = "RED";
$snoopy->rawheaders["Pragma"] = "no-cache";
$snoopy->maxredirs = 2;
$snoopy->offsiteok = false;
$snoopy->expandlinks = false;
$snoopy->user = "joe";
$snoopy->pass = "bloe";
if($snoopy->fetchtext("http://www.4wei.cn"))
{
echo "".htmlspecialchars($snoopy->results)."
n";}elseecho"获取文档时出错:".$snoopy->error."n";
获取指定url的内容:
表单提交:
既然已经提交了表单,就可以做很多事情了。接下来,我们将伪装ip,伪装浏览器:
原来我们可以伪装session和浏览器,伪装ip,哈哈可以做很多事情。比如带验证码,验证ip投票,可以连续投票。
ps:这里伪装ip其实就是伪装http头,所以一般通过REMOTE_ADDR获取的IP是不能伪装的,但是通过http头获取IP的(可以防止代理的那种)可以自己做IP .
关于如何验证验证码,简单说一下:首先,用普通浏览器查看页面,找到验证码对应的sessionid。同时记下sessionid和验证码值,然后用snoopy伪造。
原理:因为是同一个sessionid,所以得到的验证码和第一次输入的一样。
有时候我们可能需要锻造更多的东西,史努比完全为我们想到了:
完整示例:
/**
* You need the snoopy.class.php from
* http://snoopy.sourceforge.net/
*/
include("snoopy.class.php");
$snoopy = new Snoopy;
// need an proxy?:
//$snoopy->proxy_host = "my.proxy.host";
//$snoopy->proxy_port = "8080";
// set browser and referer:
$snoopy->agent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)";
$snoopy->referer = "http://www.jonasjohn.de/";
// set some cookies:
$snoopy->cookies["SessionID"] = '238472834723489';
$snoopy->cookies["favoriteColor"] = "blue";
// set an raw-header:
$snoopy->rawheaders["Pragma"] = "no-cache";
// set some internal variables:
$snoopy->maxredirs = 2;
$snoopy->offsiteok = false;
$snoopy->expandlinks = false;
// set username and password (optional)
//$snoopy->user = "joe";
//$snoopy->pass = "bloe";
// fetch the text of the website www.google.com:
if($snoopy->fetchtext("http://www.google.com")){
// other methods: fetch, fetchform, fetchlinks, submittext and submitlinks
// response code:
print "response code: ".$snoopy->response_code."n";
// print the headers:
print "<b>Headers:
";
while(list($key,$val) = each($snoopy->headers)){
print $key.": ".$val."
n";
}
print "
n";
// print the texts of the website:
print htmlspecialchars($snoopy->results)."n";
}
else {
print "Snoopy: error while fetching document: ".$snoopy->error."n";
}
用史努比类完成一张简单的图片采集:
<p> 查看全部
snoopy php网页抓取工具(php一个Snoopy的功能特点及特点分析-苏州安嘉
)
Snoopy 是一个 php 类,用来模仿网页浏览器的功能,它可以完成获取网页内容和发送表单的任务。官方网站
史努比的一些特点:
需要 php4 或更高版本。既然是PHP的一类,就不需要扩展支持,服务器不支持curl时的最佳选择。
类方法
1. fetch($uri)
这是用来抓取网页内容的方法。 $URI 参数是被爬取的网页的 URL 地址。获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
2. fetchtext($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
3. fetchform($URI)
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
4. fetchlinks($URI)
这个方法和fetch()类似,唯一不同的是这个方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
5. 提交($URI,$formvars)
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
6. 提交文本($URI,$formvars)
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
7. 提交链接($URI)
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接会自动补全并转换成完整的网址。
类属性(括号内为默认值)
演示
include "Snoopy.class.php";
$snoopy = new Snoopy;
$snoopy->proxy_host = "http://www.nowamagic.net/librarys/veda/";
$snoopy->proxy_port = "80";
$snoopy->agent = "(compatible; MSIE 4.01; MSN 2.5; AOL 4.0; Windows 98)";
$snoopy->referer = "http://www.4wei.cn";
$snoopy->cookies["SessionID"] = 238472834723489l;
$snoopy->cookies["favoriteColor"] = "RED";
$snoopy->rawheaders["Pragma"] = "no-cache";
$snoopy->maxredirs = 2;
$snoopy->offsiteok = false;
$snoopy->expandlinks = false;
$snoopy->user = "joe";
$snoopy->pass = "bloe";
if($snoopy->fetchtext("http://www.4wei.cn"))
{
echo "".htmlspecialchars($snoopy->results)."
n";}elseecho"获取文档时出错:".$snoopy->error."n";
获取指定url的内容:
表单提交:
既然已经提交了表单,就可以做很多事情了。接下来,我们将伪装ip,伪装浏览器:
原来我们可以伪装session和浏览器,伪装ip,哈哈可以做很多事情。比如带验证码,验证ip投票,可以连续投票。
ps:这里伪装ip其实就是伪装http头,所以一般通过REMOTE_ADDR获取的IP是不能伪装的,但是通过http头获取IP的(可以防止代理的那种)可以自己做IP .
关于如何验证验证码,简单说一下:首先,用普通浏览器查看页面,找到验证码对应的sessionid。同时记下sessionid和验证码值,然后用snoopy伪造。
原理:因为是同一个sessionid,所以得到的验证码和第一次输入的一样。
有时候我们可能需要锻造更多的东西,史努比完全为我们想到了:
完整示例:
/**
* You need the snoopy.class.php from
* http://snoopy.sourceforge.net/
*/
include("snoopy.class.php");
$snoopy = new Snoopy;
// need an proxy?:
//$snoopy->proxy_host = "my.proxy.host";
//$snoopy->proxy_port = "8080";
// set browser and referer:
$snoopy->agent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)";
$snoopy->referer = "http://www.jonasjohn.de/";
// set some cookies:
$snoopy->cookies["SessionID"] = '238472834723489';
$snoopy->cookies["favoriteColor"] = "blue";
// set an raw-header:
$snoopy->rawheaders["Pragma"] = "no-cache";
// set some internal variables:
$snoopy->maxredirs = 2;
$snoopy->offsiteok = false;
$snoopy->expandlinks = false;
// set username and password (optional)
//$snoopy->user = "joe";
//$snoopy->pass = "bloe";
// fetch the text of the website www.google.com:
if($snoopy->fetchtext("http://www.google.com")){
// other methods: fetch, fetchform, fetchlinks, submittext and submitlinks
// response code:
print "response code: ".$snoopy->response_code."n";
// print the headers:
print "<b>Headers:
";
while(list($key,$val) = each($snoopy->headers)){
print $key.": ".$val."
n";
}
print "
n";
// print the texts of the website:
print htmlspecialchars($snoopy->results)."n";
}
else {
print "Snoopy: error while fetching document: ".$snoopy->error."n";
}
用史努比类完成一张简单的图片采集:
<p>
snoopy php网页抓取工具(,snoopy强,大的,PHP,采集,类,使用,实例)
网站优化 • 优采云 发表了文章 • 0 个评论 • 133 次浏览 • 2021-11-28 17:16
snoopy强大的PHP采集类使用示例代码,snoopy,强,大,PHP,采集,类,使用,示例,代码
史努比强大的PHP采集类使用示例代码
易菜站长网站,站长之家为你整理了snoopy强大的PHP采集类使用示例代码。
下载链接:///codes/33397.html
史努比的一些特点:
1 fetch 网页内容 fetch
2 获取网页的文本内容(去除HTML标签)fetchtext
3 获取网页链接,表单 fetchlinks fetchform
4 支持代理主机
5 支持基本的用户名/密码验证
6 支持设置user_agent、referer(传入路由)、cookies和header内容(头文件)
7 支持浏览器重定向,可以控制重定向的深度
8 可以将网页中的链接扩展为高质量的url(默认)
9 提交数据并获取返回值
10 支持跟踪 HTML 框架
11 支持重定向时传递 cookie
需要 php4 或更高版本。既然是php的一个类,就不需要扩展支持了。服务器不支持curl时的最佳选择,
类方法:
获取($URI)
————
这是用来抓取网页内容的方法。
$URI 参数是被抓取网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
—————-
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
———————-
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
——————————
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
—————-
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有以上是snoopy强大的PHP采集类示例代码的详细介绍。欢迎大家对snoopy强大的PHP采集类使用示例代码内容提出宝贵意见 查看全部
snoopy php网页抓取工具(,snoopy强,大的,PHP,采集,类,使用,实例)
snoopy强大的PHP采集类使用示例代码,snoopy,强,大,PHP,采集,类,使用,示例,代码
史努比强大的PHP采集类使用示例代码
易菜站长网站,站长之家为你整理了snoopy强大的PHP采集类使用示例代码。
下载链接:///codes/33397.html
史努比的一些特点:
1 fetch 网页内容 fetch
2 获取网页的文本内容(去除HTML标签)fetchtext
3 获取网页链接,表单 fetchlinks fetchform
4 支持代理主机
5 支持基本的用户名/密码验证
6 支持设置user_agent、referer(传入路由)、cookies和header内容(头文件)
7 支持浏览器重定向,可以控制重定向的深度
8 可以将网页中的链接扩展为高质量的url(默认)
9 提交数据并获取返回值
10 支持跟踪 HTML 框架
11 支持重定向时传递 cookie
需要 php4 或更高版本。既然是php的一个类,就不需要扩展支持了。服务器不支持curl时的最佳选择,
类方法:
获取($URI)
————
这是用来抓取网页内容的方法。
$URI 参数是被抓取网页的 URL 地址。
获取的结果存储在 $this->results 中。
如果你正在抓取一个帧,史努比会跟踪每一帧并将其存储在一个数组中,然后将其存储在 $this->results 中。
fetchtext($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的文本内容。
fetchform($URI)
—————
该方法与fetch()类似,唯一不同的是该方法会去除HTML标签等无关数据,只返回网页中的表单内容(form)。
fetchlinks($URI)
—————-
该方法与fetch()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
提交($URI,$formvars)
———————-
此方法向$URL 指定的链接地址发送确认表单。 $formvars 是一个存储表单参数的数组。
提交文本($URI,$formvars)
——————————
该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,登录后只返回网页中的文本内容。
提交链接($URI)
—————-
这个方法类似于submit()。唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。
默认情况下,相对链接会自动补全并转换成完整的网址。
类属性:(括号内为默认值)
$host 连接的主机
$port 连接的端口
$proxy_host 使用的代理主机,如果有的话
$proxy_port 使用的代理主机端口,如果有的话
$agent 用户代理伪装(史努比 v0.1)
$referer 传入信息,如果有的话
$cookies cookies,如果有的话
$rawheaders 其他头信息,如果有的话
$maxredirs 最大重定向次数,0=不允许 (5)
$offsiteok 是否允许异地重定向。 (真)
$expandlinks 是否完成所有链接以完成地址(真实)
$user 认证用户名,如果有的话
$pass 认证用户名,如果有以上是snoopy强大的PHP采集类示例代码的详细介绍。欢迎大家对snoopy强大的PHP采集类使用示例代码内容提出宝贵意见