用Python实现页面内容抓取

奥运会如火如荼的时候,想给自己的网站加个金牌榜,找来找去没有找到门户网站有发布RSS的。
无奈来到了北京奥组委的官网看看,一看之下,也没发现有金牌榜的RSS,只好退而求其次,看看有没有相关页面,
分析了下页面内容,觉得是动态生成的,看来只好以他们的奖牌榜页面作为数据源了。好歹也是HTML,这方面的
分析器应当还有些。
正好手头在作Python的项目,查了查,有Python的HTML的分析器可用。HTMLParser
剩下的事情就好办了,首先规划下整个流程:
1.取得奖牌榜页面内容,
2.使用HTMLParser 分析页面,
3.把分析结果,做成RSS发布
4.解析RSS,作页面展示。
然后,开始按照这个流程来实现。在整个过程中,
最大的困难是在于第一步,后面几步都是自己来定数据格式,所以很好作。
第一步从别人的页面上取数据,只能按照对方的页面输出来分析制作,并且,一旦对方改变页面内容,自己这边也得
同时修改,这个时候就非常想念RSS了,哪怕是一般的XML也好啊,XML毕竟比HTML严格些,甚至是HTML也可
以忍了,甚至想想,要是它的页面里面所有Tag都有id就好了,哪怕有class也可以接受。这个时候,才充分感觉到
XML的可爱之处,W3C标准的可用之处。好在这个页面输出写的还算规矩,估计是动态生成的。利用HTMLParser
解析,虽然有些费神,但是终究是把需要的内容解析出来了。顺便把图片地址也取到了。
数据有了,一切都好办了。
看来,再怎么着,数据都是最重要的,不断推进的HTML标准,也有着它的合理性。
同时,也体会了一把处理没有语义的WEB的痛苦,纯粹的数据堆叠,只是为了让浏览器能够完美展现页面。并不考虑
数据的通用性。这恐怕是未来几年内,WEB开发人员仍然必须面对的噩梦吧。
对于这种纯粹的用于信息展示的应用来说,完全可以变成以下这种模式:
1.数据提供者:他们拥有数据,每个行业都拥有自己特色的数据,不见得有很多,但是有特色。那么他们完全可以向
WEB提供数据源,以各种形式:Database,RSS,XML,SOAP等等。
2.数据消费者:他们拥有强大的WEB表现能力,他们能把页面做得漂亮、酷,这就足够吸引用户了。他们通过各种方式
与最终用户交互,提供漂亮的页面,接受用户的回馈。反馈数据给数据提供者。
当然,这两个角色也可能是由一个组织来承担的。
又看到了分层的影子,是啊,就是分层,架构人员一直在孜孜不倦的追求的目标。



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值