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调用三种数据库的方法(1)
Oct 09 PHP
上传多个文件的PHP脚本
Nov 26 PHP
php5中类的学习
Mar 28 PHP
php download.php实现代码 跳转到下载文件(response.redirect)
Aug 26 PHP
使用PHPMailer实现邮件发送代码分享
Oct 23 PHP
PHP中的Streams详细介绍
Nov 12 PHP
php实现每天自动变换随机问候语的方法
May 12 PHP
php结合curl实现多线程抓取
Jul 09 PHP
yii2中LinkPager增加总页数和总记录数的实例
Aug 28 PHP
php实现与python进行socket通信的方法示例
Aug 30 PHP
从ThinkPHP3.2.3过渡到ThinkPHP5.0学习笔记图文详解
Apr 03 PHP
laravel框架数据库配置及操作数据库示例
Oct 10 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
日本十大最佳动漫,全都是二次元的神级作品
2019/10/05 日漫
关于PHP结束标签的使用细节探讨及联想
2013/03/04 PHP
PHP常用技术文之文件操作和目录操作总结
2014/09/27 PHP
php使用iconv中文截断问题的解决方法
2015/02/11 PHP
6个超实用的PHP代码片段
2015/08/10 PHP
php post换行的方法
2020/02/03 PHP
JS加ASP二级域名转向的代码
2007/05/17 Javascript
仿jQuery的siblings效果的js代码
2011/08/09 Javascript
javascript 事件处理程序介绍
2012/06/27 Javascript
使用js检测浏览器是否支持html5中的video标签的方法
2014/03/12 Javascript
什么是cookie?js手动创建和存储cookie
2014/05/27 Javascript
js获取页面传来参数的方法
2014/09/06 Javascript
微信小程序开发之toast等弹框提示使用教程
2017/06/08 Javascript
加载 vue 远程代码的组件实例详解
2017/11/20 Javascript
Iview Table组件中各种组件扩展的使用
2018/10/20 Javascript
基于jQuery的时间戳与日期间的转化
2019/06/21 jQuery
layui中的switch开关实现方法
2019/09/03 Javascript
[01:22:29]真视界:2019年国际邀请赛总决赛
2020/01/29 DOTA
python3 实现验证码图片切割的方法
2018/12/07 Python
python实现抠图给证件照换背景源码
2019/08/20 Python
python实现字典嵌套列表取值
2019/12/16 Python
Pytorch mask_select 函数的用法详解
2020/02/18 Python
什么是python的函数体
2020/06/19 Python
python如何提升爬虫效率
2020/09/27 Python
css3使网页、图片变成灰色兼容大多数浏览器
2014/07/02 HTML / CSS
HTML5 video视频字幕的使用和制作方法
2018/05/03 HTML / CSS
享受加州生活方式的时尚舒适:XCVI
2018/07/09 全球购物
应聘教师自荐信
2013/10/12 职场文书
模特职业生涯规划范文
2014/02/26 职场文书
市场开发与营销专业求职信范文
2014/05/01 职场文书
大学生安全责任书
2014/07/25 职场文书
安全责任书范文
2014/08/25 职场文书
2014企业年终工作总结
2014/12/23 职场文书
机动车交通事故协议书
2015/01/29 职场文书
找规律教学反思
2016/02/23 职场文书
Go语言实现Snowflake雪花算法
2021/06/08 Golang