抓取网易每日轻松一刻

看网易也有很多年了,比较喜欢手机端的每日轻松一刻节目,但这个栏目只在手机端,而且没有往期回顾。出于收藏的心里,写个程序抓取该系列网页。


1.首先是数据来源,在网易版面找了半天没有发现专栏之类的标记。倒是有几家第三方网站,收录了轻松一刻这个节目。其中有一家叫17轻松(http://www.17qingsong.com/)。

决定从这里抓取数据。这位站长倒是也给出了Github地址,但我不懂他用的技术。干脆用java这种大众化语言写了一个采集他的。


分析该网站,点击轻松专题后,进入的是一个列表页面  如下图,当然 有些额外的广告。


点击下一页之后,其浏览器地址栏变化的仅仅是最后端的一部分

如  http://www.17qingsong.com/qingsong-p2  http://www.17qingsong.com/qingsong-p45 即页码变化。根据这个规律,我们可以爬出所有列表页面。

通过URL这个jdk中的类,将这些页面存储为本地html文件。


2.我们来分析这些列表网页,我们感兴趣的超链信息在哪。


如图所示,我们感兴趣的超链在该结构位置,这里还使用了HTML5的一些标签,这位站长是挺前卫的。

我们在第一步已经拿到了这个页面的源码即html文件,接下来就是用java分析它了,这可远没js方便,不过,前辈们已经留下了足够多的财富,我这里使用了jodd工具包中的jerry工具来解析html,语法非常接近jquery。这样我们拿到了超链列表。


3.超链所连接的是相对地址,我们只好再组装一下最终地址。再次用第一步中的URL类方法打开目标html并存储。

------------------------------------------------

这些并没什么技术难度,而且只能针对17轻松这个网站抓取数据。

在程序中打开目标html并写入文件时还遭遇了性能瓶颈,加了个System.gc()。速度倒是显著提高,但总觉的不妥。

源码以及轻松一刻合集地址http://yun.baidu.com/share/link?shareid=4089969037&uk=1778914161


讽刺的是,我把这个分享当做评论跟帖到今天的轻松一刻时,网易小编给我删帖了。。。不知道是不喜欢用百度网盘(评论不允许发网址,我都是用dian代替)还是因为在评论中调侃网易招不招程序员竞争他了~放心,看了程序你就知道我是多么没竞争力了。

最后给大家推荐一篇文章  网易评论的历史

http://www.huxiu.com/article/15417/1.html




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值