php基于Snoopy解析网页html的方法


Posted in PHP onJuly 09, 2015

本文实例讲述了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 相关文章推荐
php数据库配置文件一般做法分享
Jul 07 PHP
深入php中var_dump方法的使用详解
Jun 24 PHP
PHP怎么实现网站保存快捷方式方便用户随时浏览
Aug 15 PHP
php多功能图片处理类分享(php图片缩放类)
Mar 14 PHP
ThinkPHP基于PHPExcel导入Excel文件的方法
Oct 15 PHP
PHP中变量引用与变量销毁机制分析
Nov 15 PHP
PHP实现QQ快速登录的方法
Sep 28 PHP
PHP strcmp()和strcasecmp()的区别实例
Nov 05 PHP
Yii2-GridView 中让关联字段带搜索和排序功能示例
Jan 21 PHP
ThinkPHP中create()方法自动验证实例
Apr 26 PHP
PHP微信网页授权的配置文件操作分析
May 29 PHP
Centos7 Yum安装PHP7.2流程教程详解
Jul 02 PHP
php生成固定长度纯数字编码的方法
Jul 09 #PHP
php随机获取金山词霸每日一句的方法
Jul 09 #PHP
PHP实现的QQ空间g_tk加密算法
Jul 09 #PHP
PHP自毁程序(慎用)
Jul 09 #PHP
PHP模板解析类实例
Jul 09 #PHP
PHP多文件上传实例
Jul 09 #PHP
php判断linux下程序问题实例
Jul 09 #PHP
You might like
dedecms集成财付通支付接口
2014/12/28 PHP
PHP模拟asp.net的StringBuilder类实现方法
2015/08/08 PHP
Laravel实现搜索的时候分页并携带参数
2019/10/15 PHP
改版了网上的一个js操作userdata
2007/04/27 Javascript
JS获取iframe中longdesc属性的方法
2015/04/01 Javascript
jquery简单实现带渐显效果的选项卡菜单代码
2015/09/01 Javascript
JavaScript中解决多浏览器兼容性23个问题的快速解决方法
2016/05/19 Javascript
JavaScript使用简单正则表达式的数据验证功能示例
2017/01/13 Javascript
AngularJS路由Ui-router模块用法示例
2017/05/29 Javascript
JavaWeb表单及时验证功能在输入后立即验证(含用户类型,性别,爱好...的验证)
2017/06/09 Javascript
ZeroClipboard.js使用一个flash复制多个文本框
2017/06/19 Javascript
详解使用 Node.js 开发简单的脚手架工具
2018/06/08 Javascript
json数据格式常见操作示例
2019/06/13 Javascript
cordova+vue+webapp使用html5获取地理位置的方法
2019/07/06 Javascript
[53:44]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Magma BO3 第一场 1月31日
2021/03/11 DOTA
教你如何将 Sublime 3 打造成 Python/Django IDE开发利器
2014/07/04 Python
python实现简单socket程序在两台电脑之间传输消息的方法
2015/03/13 Python
简单介绍Python中的RSS处理
2015/04/13 Python
python对html代码进行escape编码的方法
2015/05/04 Python
Python中内置的日志模块logging用法详解
2016/07/12 Python
PyQt5图形界面播放音乐的实例
2019/06/17 Python
在python 中split()使用多符号分割的例子
2019/07/15 Python
Python实现搜索算法的实例代码
2020/01/02 Python
python实现登录与注册系统
2020/11/30 Python
Python爬虫之Selenium设置元素等待的方法
2020/12/04 Python
css3编写浏览器背景渐变背景色的方法
2018/03/05 HTML / CSS
Html5与App的通讯方式详解
2019/10/24 HTML / CSS
英国广泛的照明产品网站:Lights4living
2018/01/28 全球购物
如何处理简单的PHP错误
2015/10/14 面试题
康拓普公司Java笔面试
2016/09/23 面试题
餐厅经理岗位职责和岗位目标
2014/02/13 职场文书
《找不到快乐的波斯猫》教学反思
2014/02/24 职场文书
学校献爱心活动总结
2014/07/08 职场文书
你真的了解PHP中的引用符号(&)吗
2021/05/12 PHP
Sql Server之数据类型详解
2022/02/28 SQL Server
css3 文字断裂效果
2022/04/22 HTML / CSS