php基于Snoopy解析网页html的方法
本文实例讲述了php基于Snoopy解析网页html的方法。分享给大家供大家参考。具体实现方法如下:
set_time_limit(0); $user = array('20517', '20518'); header("content-Type: text/html; charset=utf-8"); require_once './Snoopy.php'; $snoopy = new Snoopy(); //$uri = 'http://www.juzimi.com/meitumeiju'; $uri = 'http://www.juzimi.com/meitumeiju?page=1'; $snoopy->fetch($uri); $con = $snoopy->getResults(); $doc = new DOMDocument(); $doc->loadHTML($con); /* make a result array ... */ $result = []; /* go through all nodes which have class="baby" ... */ $i = 0; foreach( ( new DOMXPath( $doc ) )->query( '//*[@id="bdshare"]' ) as $element ) { $row = $doc->saveHTML($element); $start = stripos($row, '{'); $end = stripos($row, '}'); $len = $end - $start + 1; $json = substr($row, $start, $len); $json = str_replace("'", '"', $json); $obj = json_decode($json); $pic = $obj->pic; $desc = $obj->desc; $filename = '/Uploads/meiju/card' . date('ymdhis') . $i . '.png'; $file = '/alidata/www/test' . $filename; $image = file_get_contents($pic); file_put_contents($file, $image); }
希望本文所述对大家的php程序设计有所帮助。
相关推荐
-
php使用curl和正则表达式抓取网页数据示例
利用curl和正则表达式做的一个针对磨铁中文网非vip章节的小说抓取器,支持输入小说ID下载小说. 依赖项:curl 可以简单的看下,里面用到了curl ,正则表达式,ajax等技术,适合新手看看.在本地测试,必须保证联网并且确保php开启curl的mode SpiderTools.class.php 复制代码 代码如下: <?php session_start(); //封装成类 开启这些自动抓取文章 #header("Refresh:30;http://www.test.co
-
PHP采集类Snoopy抓取图片实例
用了两天php的Snoopy这个类,发现很好用.获取请求网页里面的所有链接,直接使用fetchlinks就可以,获取所有文本信息使用fetchtext(其内部还是使用正则表达式在进行处理),还有其它较多的功能,如模拟提交表单等. 使用方法: 先下载Snoopy类,下载地址:http://sourceforge.net/projects/snoopy/ 先实例化一个对象,然后调用相应的方法即可获取抓取的网页信息 复制代码 代码如下: include 'snoopy/Snoopy.class.php
-
snoopy 强大的PHP采集类使用实例代码
下载地址: http://www.jb51.net/codes/33397.html Snoopy的一些特点: 1抓取网页的内容 fetch 2 抓取网页的文本内容 (去除HTML标签) fetchtext 3抓取网页的链接,表单 fetchlinks fetchform 4 支持代理主机 5支持基本的用户名/密码验证 6 支持设置 user_agent, referer(来路), cookies 和 header content(头文件) 7支持浏览器重定向,并能控制重定向深度 8能把网页中的
-
PHP正则表达式抓取某个标签的特定属性值的方法
php正则学了一些日子,抓了一些网站的数据,从而发现每次都自己写正则重新抓很麻烦,于是就想写一个抓取特定标签具有特定属性值的接口通用,直接上代码. //$html-被查找的字符串 $tag-被查找的标签 $attr-被查找的属性名 $value-被查找的属性值 function get_tag_data($html,$tag,$attr,$value){ $regex = "/<$tag.*?$attr=\".*?$value.*?\".*?>(.*?)<\
-
PHP采集类snoopy详细介绍(snoopy使用教程)
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页内容,发送表单,可以用来开发一些采集程序和小偷程序,本文章详细介绍snoopy的使用教程. Snoopy的一些特点: 抓取网页的内容 fetch 抓取网页的文本内容 (去除HTML标签) fetchtext 抓取网页的链接,表单 fetchlinks fetchform 支持代理主机 支持基本的用户名/密码验证 支持设置 user_agent, referer(来路), cookies 和 header content(头文件) 支持
-
snoopy PHP版的网络客户端提供本地下载
magpierss中就用到了snoopy,这让我有点兴趣去研究下这个咚咚.再SF上,找到了这个源代码.居然就是一个类,但不要笑看哦,功能可是很强大的. 官方的简介,我翻译了下(汗...最近老是充当翻译的角色) snoopy是一个php类,用来模仿web浏览器的功能,它能完成获取网页内容和发送表单的任务. 下面是它的一些特征: 1.方便抓取网页的内容 2.方便抓取网页的文字(去掉HTML代码) 3.方便抓取网页的链接 4.支持代理主机 5.支持基本的用户/密码认证模式 6.支持自定义
-
基于Snoopy的PHP近似完美获取网站编码的代码
先要到网上下载Snoopy.class.php 调用方法: 复制代码 代码如下: <?php require 'lib/Snoopy.class.php'; require 'lib/WebCrawl.class.php';//包含下面代码 $go=new WebCrawl('http://www.baidu.com'); echo $go->getCharset(); ?> 复制代码 代码如下: <?php class WebCrawl { private $url; priva
-
php结合正则批量抓取网页中邮箱地址
php如何抓取网页中邮箱地址,下面我就给大家分享一个用php抓取网页中电子邮箱的实例. <?php $url='http://www.jb51.net'; //要采集的网址 $content=file_get_contents($url); //echo $content; function getEmail($str) { //$pattern = "/([a-z0-9]*[-_\.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3
-
PHP正则+Snoopy抓取框架实现的抓取淘宝店信誉功能实例
本文实例讲述了PHP正则+Snoopy抓取框架实现的抓取淘宝店信誉功能.分享给大家供大家参考,具体如下: <?php header("Content-Type:text/html;charset=gbk"); include "Snoopy.class.php"; $snoopy = new Snoopy; $snoopy->fetch("http://rate.taobao.com/user-rate-f01d9cb1245a22fcea47
-
PHP采集利器 Snoopy 试用心得
Snoopy是什么? (下载snoopy) Snoopy是一个php类,用来模仿web浏览器的功能,它能完成获取网页内容和发送表单的任务. Snoopy的一些特点: * 方便抓取网页的内容 * 方便抓取网页的文本内容 (去除HTML标签) * 方便抓取网页的链接 * 支持代理主机 * 支持基本的用户名/密码验证 * 支持设置 user_agent, referer(来路), cookies 和 header content(头文件) * 支持浏览器转向,并能控制转向深度 * 能把网页中的链接扩展
-
PHP怎样用正则抓取页面中的网址
前言 链接也就是超级链接,是从一个元素(文字.图片.视频等)链接到另一个元素(文字.图片.视频等).网页中的链接一般有三种,一种是绝对URL超链接,也就是一个页面的完整路径:另一种是相对URL超链接,一般都链接到同一网站的其他页面:还有一种是页面内的超链接,这种一般链接到同一页面内的其他位置. 搞清楚了链接的种类,就知道要抓链接,主要还是绝对URL超链接和相对URL超链接.要写出正确的正则表达式,就必须要了解我们查找的对象的模式. 先说绝对链接,也叫作URL(Uniform Resource L
-
php中Snoopy类用法实例
本文实例讲述了php中Snoopy类用法.分享给大家供大家参考.具体分析如下: 这里演示了php中如何通过Snoopy抓取网页信息 snoopy类的下载地址:http://sourceforge.net/projects/snoopy/ /* You need the snoopy.class.php from http://snoopy.sourceforge.net/ */ include("snoopy.class.php"); $snoopy = new Snoopy; //
随机推荐
- iOS 实现简单的加载等待动画示例(思路与实现)
- 为什么要建立web标准与web标准的好处
- jQuery对象和Javascript对象之间转换的实例代码
- javascript处理表单示例(javascript提交表单)
- vbscript LoadPicture函数使用方法与漏洞利用
- PHP html标签正则替换并可自定义正则规则
- 在Java的Struts框架中ONGL表达式的基础使用入门
- PHP的foreach中使用引用时需要注意的一个问题和解决方法
- 利用Python的装饰器解决Bottle框架中用户验证问题
- Android Path绘制贝塞尔曲线实现QQ拖拽泡泡
- servlet 解决乱码问题
- 用C#获取硬盘序列号,CPU序列号,网卡MAC地址的源码
- 花生壳与轻轻松松架设邮件服务器图文教程
- php生成图片缩略图功能示例
- Android分屏多窗口的实践代码
- Window下adb shell中文乱码问题解决方法
- PHP实现浏览器中直接输出图片的方法示例
- 解决layui中table异步数据请求不支持自定义返回数据格式的问题
- mysql 8.0.11 winx64安装配置方法图文教程
- 对python中url参数编码与解码的实例详解