抓取csdn的数据

如有不明白的地方欢迎加QQ群14670545 探讨

代码质量不行,后面采集起来卡,原因是正则我太菜了,没有开多线程采集。下面我举例:

目标页面是http://bbs.csdn.net/recommend_tech_topics,有图有真相:


看看采集后的效果:


下面是采集到的每个帖子楼主的内容以及一些简单的显示。图片之所以没有显示出来,因为csdn是用的一个专门的图片服务器,设置了防盗链,这个自己捣鼓下应该也可以绕过去。



下面我来分析下:

抓取的原理:先获取对应url页面的html内容,然后根据找出你要抓取的目标数据的的html结构,看看这个结构是否有某种规律,然后用正则去匹配这个规则,匹配到了以后就可以扣出来。

先看看http://bbs.csdn.net/recommend_tech_topics这个页面的源代码:


再通过谷歌浏览器我们再次确认了,目标数据是位于

...
中间的


可是怎么匹配呢,我百度了下,就是找某两个字符中间的内容。考虑到结尾

很多,我这里就偷懒,把
...
这一对div和近邻着的的后面的一个div【从源代码上我们可以看到是: