【来自我的博客】
昨天下班之后,看到网上大家都在讨论猪流感的问题,我也关注了一下,毕竟现在这个是相当热的一个的话题。我看了新浪的专题页面,内容也挺丰富的,基本上什么都包括了。我突然想到,其实可以利用开放API比较容易的搭建出一个这样的mashup出来,包含相关的信息。于是就开始动手做,就得到了这样的一个mashup。
点击这里访问该mashup。
用到的实现技术:jQuery, jQuery UI, YUI Reset/Fonts/Grid CSS。
用到的开放API和工具有:Google AJAX feed API,Yahoo! Pipes,Google Maps,屏幕抓取。
其中“新闻动态”是用Yahoo! Pipes把谷歌资讯和百度新闻做了一个整合;“博客讨论“用了有道的博客搜索;”相关视频“是自己抓取了百度视频搜索的结果,利用了我的另外一个GAE应用的后台(不过做了一些更好的改进,这些改进会反过来应用在这个GAE应用上。);”趋势地图“用了谷歌地图,数据来源是新浪的专题页面,这里并没有做抓取的操作。
还有其它可以考虑的点:
- 把地图的后台改成自动抓取的,这样不用每次都手工同步。
- 添加图片?不过关于猪流感,基本上没什么好图片吧。
- 知识方面的,包括维基百科。
【更新】
把之前做的关于猪流感最新动态的Mashup进行了改进,主要有如下:
- 名称改为“甲型H1N1流感”
- “趋势地图”的数据现在是通过抓取新浪专题页面而来,不再需要手工同步。(自动化就是好)
- 改进了“新闻追踪”模块,内容比之前的更加丰富。
- 修改了标签页的顺序,提升了页面的加载速度
技术实现方面的一些细节:
- 屏幕抓取方面,从新浪专题页面只能获得国家名称,具体的地理位置编码则保存在一个CSV文件中。两个数据结合起来,就得到了可以在地图上面显示的信息。为了处理简单,使用了dojox.data.CsvStore。
- “新闻追踪”模块方面,由于pipes自带的fetch feed模块对于中文的处理不是很好,我该用了YQL模块来获取feed。
截图如下: