我的第一个纯代码小作品——MobiLib @NJU

我的第一个纯代码小作品——MobiLib @NJU

MobiLib @NJU其实我在有这个WordPress博客之前也曾经发布过一些比较简单的东西,大多数都是汉化软件。这其中比较近的就是去年国庆时发布的孢子Spore简体中文包,此外还有当时引起巨大争议的Universal Extractor汉化版,再老一点的但至今还有人发邮件来咨询我相关功能的是一个名叫Super Mario XP的同人游戏的汉化版。不过这次我有了第一个纯写代码的小作品了,便是MobiLib @NJU这是一个适合于手机等小屏幕终端的查询南京大学馆藏书目的小网站。网址是:http://MobiLib.LilyStudio.org

这个网站其实只有两个页面,一个是搜索页一个是详细信息页,采用PHP编写。PHP也是我这个学期才开始学的,以前一直觉得他很强大,但是一直没有工夫去学,如今感谢南京大学小百合工作室让我有了这个机会来走进PHP。于是初学的小小成果就这样诞生了!在这里要感谢Lightory提供CSS技术支持,继续阅读文章可以看到截图和更多信息。

搜索结果页

搜索结果页

其实我们并没有和学校的图书馆进行任何洽谈,所以也无法拿到图书馆的数据库使用权限。这个网站查到的信息其实是利用抓取图书馆官方搜索页面上的相关信息并重新排版得来的。当然,机器爬网页这么繁琐的活以我的能力还尚不能解决,所以就使用了人家编写好的PHP类PHP Simple HTML DOM Parser。调用这个类时指定网页元素的方法就和写CSS选择器一样,非常简单,定位到相应的元素后就可以对它进行各种操作,比如提取文本,提取标签属性等等了。

这个Library虽然好用,但是貌似有一个缺点,就是消耗内存过大。当我在测试时,使用一些简单的关键字导致会存在上万个匹配结果时,PHP脚本消耗的内存往往会超过20M。由于PHP默认的内存使用上线是16M,因此会报错。虽然在它提供了一个clear的方法,但是clear必须是不再使用抓取的那个网页后才能用的,所以尽管最后php显示内存使用不是太大,但是事实上在执行过程中的消耗还是挺大的。

书籍详细信息页

书籍详细信息页

事实上用手机也能浏览图书馆官方查询页面,而且官方页面上的信息量更大,那为什么还要再做一个手机版的呢?用手机上的UCweb或者是Opera Mini之类的第三方浏览器访问官方页面当然是可以的,但是有一点不方便的就是官方查询页面设计时并没有考虑到手机等小屏幕终端,尽管在电脑这样的大屏幕上看内容非常全面。而这个手机版尽量简化了作用不大的信息,仅仅保留了书名、作者、出版社等书籍基本信息,最关键的是提供了图书馆内的馆藏详细情况和索书号。事实上大家查询图书馆时99%需要的信息这里都可以提供了,况且界面还这么简洁,让你站在任何一个角落都可以看到查到图书馆里的书籍,节约了时间,何乐而不为呢?

最后透露一个小消息,在人无聊的时候总会找点事情来做,于是前段时间我就无聊到想给这个网站做一个专门为iPhone/iPod Touch定制的界面。事实上网上有一个叫做iWebKit的工具包提供了制作这些网页所需的CSS和JS等,所以改造起来还是非常方便的,不过由于时间有限我也不可能天天无聊下去,所以到现在还没有完工,呵呵。我可以考虑在寒假时花一点点时间把它完成。这里先透露一下截图吧!

初始页面

初始页面

搜索结果页面

搜索结果页面

GD Star Rating
loading...
我的第一个纯代码小作品——MobiLib @NJU, 5.0 out of 5 based on 1 rating

延伸阅读:

  1. 我的高科技产品探究课之1:MacBook Pro
  2. 军训小记
  3. 军训的终曲