php 获得其他网页数据,php抓取网页内容,获取网页数据

php通过simple_html_dom实现抓取网页内容,获取核心网页数据,将网页数据写入本地 xxx.json 文件

其代码实现逻辑:

1. 引入simple_html_dom.php文件

require_once 'simple_html_dom-master/simple_html_dom.php';

2. 获取远程或者本地html文件

$html = file_get_html('./imooc.html');

3. 创建要获取数据的数组$cases =  Array();

$arrImg = Array();

4. 获取当前网页所有案例图片、标题、观看人数、等级、价格foreach($html->find('.shizhan-course-wrap') as $element)

{

$arrImg['img']  =  "http:".$element->find('.shizhan-course-img',0)->src;

$arrImg['intro']  =  $element->find('.shizan-name',0)->plaintext;

$arrImg['degree']  =  $element->find('.grade',0)->plaintext;

$arrImg['views']  =  $element->find('.shizhan-info>span',1)->plaintext;

$arrImg['desc']  =  $element->find('p.shizan-desc',0)->plaintext;

$arrImg['price']  =  $element->find('div.course-card-price',0)->plaintext;

$arrImg['link']  =  "http://coding.imooc.com".$element->find('a',0)->href;

$cases[] = $arrImg;

}

5. 生成json格式,写入本地文件imooc.json$json = json_encode($cases);

file_put_contents('imooc.json', $json);

6. 通过其他html页面ajax调用本地json文件~function(){

function ajax(url,fn){

var xhr = new XMLHttpRequest();

xhr.open('get',url,true);

xhr.send();

xhr.onload = function(ev){

fn(ev);

}

}

ajax('./imooc.json',function(ev){

var data = JSON.parse(ev.currentTarget.response);

console.log(data);

})

}();

7. 打印台输出内容:

7546

8. 至于其获取元素相关的语法操作类似于jquery获取元素操作,请阅读在线网页文档:

http://simplehtmldom.sourceforge.net/manual.htm

9. 其simple_dom_html类库下载地址:

链接:https://pan.baidu.com/s/1o8mlw98 密码:im5q

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值