snoopy php网页抓取工具(Snoopy()抓取网页的文本内容(去除HTML标签))

优采云 发布时间: 2021-11-03 00:12

  snoopy php网页抓取工具(Snoopy()抓取网页的文本内容(去除HTML标签))

  内容

  什么是史努比?

  Snoopy是一个php类,用来模仿网页浏览器的功能,可以完成获取网页内容和发送表单的任务。

  官方网站

  史努比(Snoopy),一个可爱的品类~

  你是怎么遇到的?

  因为之前在Hulvlin看到@浪人写的乐讯内部信机,当时觉得有点意思,但是后来使用的时候,发现了一些问题。有时程序中的内信失败,所以我打算修改它。就这样,我认识了史努比。

  史努比的一些特点

  获取网页内容 fetch()

  抓取网页的文本内容(去除HTML标签)fetchtext()

  获取网页链接,表单 fetchlinks() fetchform()

  支持代理主机

  支持基本的用户名/密码验证

  支持设置user_agent、referer(传入路由)、cookies和header内容(头文件)

  支持浏览器重定向,控制重定向深度

  可以将网页中的链接扩展为高质量的 url(默认)

  提交数据并获取返回值

  支持跟踪HTML框架

  支持在重定向时传递 cookie

  需要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标签等无关数据,只返回网页中的链接。默认情况下,相对链接将自动完成并转换为完整的 URL。

  5.提交($URI,$formvars)

  此方法向 $URL 指定的链接地址发送确认表单。$formvars 是一个存储表单参数的数组。

  6.提交文本($URI,$formvars)

  该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,并且只返回登录后网页中的文本内容。

  7.提交链接($URI)

  该方法与submit()类似,唯一不同的是,该方法会去除HTML标签等无关数据,只返回网页中的链接。默认情况下,相对链接将自动完成并转换为完整的 URL。

  类属性(括号内为默认值)

  $host 连接的主机

  $port 连接端口

  $proxy_host 使用的代理主机,如果有的话

  $proxy_port 使用的代理主机端口,如果有的话

  $agent 用户代理伪装(史努比 v0.1)

  $referer 传入信息,如果有的话

  $cookies cookies,如果有的话

  $rawheaders 其他头信息,如果有的话

  $maxredirs 最大重定向次数,0=不允许 (5)

  $offsiteok 是否允许异地重定向。(真的)

  $expandlinks 是否完成所有链接以完成地址(true)

  $user 认证用户名,如果有的话

  $pass 认证用户名,如果有的话

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线