项目中要用到採集的数据,所以就先拿CSDN博客来试了试。这里使用Simple HTML DOM(官网)这个库,它可以方便的遍历HTML文档。

<?php
include_once('simple_html_dom.php');
header('Content-Type:text/html;charset=utf-8');
$html = file_get_html('http://blog.csdn.net/szy361'); $res = $html->find('#hotarticls ul.panel_body li a[title]');//取得id=hotarticls下class为panel_bodya的ul标签下的a的title
$span = $html->find('#hotarticls ul.panel_body li span');//取得span
foreach($res as $element){
$arr[] = $element->title.'+'.$element->href;//将title值和href的值通过+连起来
}
foreach($span as $e){
$brr[] = $e->innertext;//得到span下的值组成的数组
} //将两个数组组成一个新的二维数组
for($i=0;$i<count($res);$i++){
$crr[] = explode('+',$arr[$i]);
$crr[$i][] = $brr[$i];
}
return $crr;

扩展:

PHP Simple HTML DOM解析器使用入门

PHP採集CSDN博客边栏的阅读排行的更多相关文章

  1. Python爬取CSDN博客文章

    0 url :http://blog.csdn.net/youyou1543724847/article/details/52818339Redis一点基础的东西目录 1.基础底层数据结构 2.win ...

  2. [2015更新]用Word2007写CSDN博客

    搞了半天终于可以用word2007发布CSDN博客了,特分享出来,以方便其他用户. 所示的界面.     图1 office按钮 所示的管理账号,然后点击"新建"也可以进入图3所示 ...

  3. 如何在CSDN博客自定义栏目中添加“给我写信”

    在"自定义栏目"中添加"连接"(将自己的微博,QQ空间和CSDN博客关联起来)很多人都做过.但是添加"给我写信"这个功能,用的好像不太多.此 ...

  4. 解决CSDN博客插入代码出现的问题

    我在写CSDN博客的时候有时候会在插入代码之后继续编辑,然后保存之后经常会出现一些多余的符号<p 例如<pre></pre>,这样的标记,其实这是html的一个元素,pr ...

  5. 神一样的CSDN博客排名规则

    本文转载于:http://blog.csdn.net/littletigerat/article/details/17448521 神一样的CSDN博客排名规则 一.引言 年. 马年CSDN博客,毫无 ...

  6. 梦想还是要有的-纪念正式成为csdn博客专家暨年中总结

    csdn博客:http://blog.csdn.net/tuzongxun 我的csdn历程(坚持总会有收获):   一年零三个月之前,2015年3月3日,我在csdn写下第一篇技术博客,只是记录了一 ...

  7. 从csdn博客搬家过来,请多关照!

    之前一直在csdn博客,也写了不少关于java的文章,主要是学习java上的一些问题.想通过这种方式来加深对问题的认知,同时也可以帮助到志同道合的人,一起在编程的道路上共进,共勉.

  8. JAVA爬虫挖取CSDN博客文章

    开门见山,看看这个教程的主要任务,就去csdn博客,挖取技术文章,我以<第一行代码–安卓>的作者为例,将他在csdn发表的额博客信息都挖取出来.因为郭神是我在大学期间比较崇拜的对象之一.他 ...

  9. 原创内容搬家到csdn博客啦~

    以后原创的文章就发布在csdn博客啦: http://blog.csdn.net/aceyan0718 这里就用来当作一个网络笔记本吧,转载些优质的内容

随机推荐

  1. webclient下载文件 带进度条

    private void button1_Click(object sender, EventArgs e) { doDownload(textBox1.Text.Trim()); } private ...

  2. Redis于windows在安装

    下载的windows版本号是redis-2.0.2,解压到D盘下: D:\redis-2.0.2 进到该文件夹下,有下列文件: redis-server.exe:服务程序 redis-check-du ...

  3. Socket编程实践(4) --更复杂的过程server

    1.Socket地址复用 int getsockopt(int sockfd, int level, int optname, void *optval, socklen_t *optlen); in ...

  4. 初步boost之pool图书馆学习笔记

    pool 内存池概述 通常我们习惯直接使用new.malloc等API申请分配内存,这样做的缺点在于:因为所申请内存块的大小不定.当频繁使用时会造成大量的内存碎片并进而减少性能. 内存池则是在真正使用 ...

  5. UVA 10529 Dumb Bones 可能性dp 需求预期

    主题链接:点击打开链接 题意: 要在一条直线上摆多米诺骨牌. 输入n, l, r 要摆n张排,每次摆下去向左倒的概率是l, 向右倒的概率是r 能够採取最优策略.即能够中间放一段.然后左右两边放一段等, ...

  6. 终结者:具体解释Nginx(一)

            相信非常多人都听过Nginx.这个小巧的东西能够和Apache及IIS相媲美. 那么它有什么作用呢?一句话.它是一个减轻Web应用server(如Tomcat)压力和实现Web应用se ...

  7. Android Notification (转)

    上回我们提到在4.0ICS之后,Google为Android平台的Notification这把“倚天剑”注入了更多新鲜的元素,使其更加实用美观.Notification的样式从此变得丰富起来,以适应于 ...

  8. android怎么在launcher改动内置apk的icon

    找到launcher下的IconCache中加入变量用来存储要改动apk的包名 及要改动成的icon private String[] className = {"com.google.an ...

  9. Cocos2d-3x:vs2012项目开关android项目需要注意的地方

    http://www.cocoachina.com/bbs/read.php?tid=194668 先依照这个文章导入库到vs项目. 在vs项目的sceen类的里加入 #include "c ...

  10. freemarker 空白处理

    1 一个简短的引论 HTML 和 XML 都不是对空白敏感的,可是这么多多余的空白是非常令人头疼的,并且添加处理后的 HTML 文件大小也是不是必需的.当然,对于空白敏感的方式的输出这依然是个大问题. ...