高山流水
msgbartop
动之则分,静之则合,无过不及,随曲就伸。
msgbarbottom

12 四 07 Millennium系统OPAC整合之三:构建自己的WebBridge

Millennium系统的OPAC中,有一个产品叫WebBridge,通过它,读者可以在查阅相关书目信息的同时,以OPENURL的方式在各类开放数据库中获取相关全文、电子图书、搜索引擎结果及其他相关信息。如下图所示(点击放大):

(应要求,不得放截图,大家要看自己找去~嘿嘿,若被授权,可email偶)

示例用的是香港大学的OPAC系统,大家可以通过
http://library.hku.hk/ 体验一下。
不可否认,WebBridge是个好东西,但是好东西往往意味着高价钱,(应要求,此处省略若干字…..若被授权,请EMAIL偶)。有句俗话叫癞蛤蟆想吃天鹅肉,小钟就像那见过了天鹅,却只能流着口水的癞蛤蟆,始终惦记在心里啊~
所谓庸人自扰,相思成病,看着好东西却得不到是很伤的,所以小钟无奈之下退而求其次——天鹅肉吃不到,但鸭子咱会养,咱整个鸭子试试!
言归正传,分析一下这个WebBridge,关键在于其针对读者的检索结果,在结果页面上提供了一个或若干个相关参数,通过这些参数,可以构建出相应的URL,从而提交到各类开放数据库。
就这么个简单的东西。
那么小钟要做的事情就两点:
一、找出一个有用的参数。这个参数可以是检索词,题名或者ISBN号等等。
二、找出一个可以修改检索结果页面的地方,让检索结果页面可以显示部分自定义的内容。
而这两点其实都不难。
一、(应要求,在此省略字数400多字,若被授权并需进一步交流,请email小钟)

二、对页面进行修改,这就更简单了,只要能输入HTML的地方,就可以任意嵌入我们想要嵌入的东西,方法有很多,比如,嵌入一个IFRAME、嵌入一个DIV、嵌入一段脚本……

具体实现过程如下:

一、(应要求,此处省略300多字,若被授权并需进一步交流,请email小钟)

二、提供一个webbridge.asp网页,该网页用于接收参数并实现相关功能,例如:

dim para ‘参数

para=trim(request(”para”))

if IsNumeric(replace(para,”x”,”"))=true then
‘如果传入的是ISBN号

response.Write(”随书光盘:“)
‘查找随书光盘信息

….

if
…. then

如有光盘可请求上网


else

下载光盘

end
if

….

response.Write(”电子图书:“)
‘查找电子图书

超星数字图书

方正电子图书

书生电子图书

NetLibrary

GOOGLE查找电子图书

response.Write(”电子期刊:“) ‘查找期刊

….

else ‘如果传入的是检索词

….

end if

效果如下图(点击放大):

(应要求,不得随便截图,自己看去,若被授权,可EMAIL偶)

读者点击下载光盘,可以下载《Thinking in
java》这本书的随书光盘,点击GOOGLE查找免费电子图书,可以提交检索到GOOGLE图书等等。

当然,由于能用的参数有限,也没有用到AJAX,目前大概也只能做到这个程度,聊胜于无吧。

其实,对于所需的各类参数,即使Millennium的OPAC系统一个参数都不提供,我们也完全可以使用javascript
+
Dom,进行用户页面分析获得,进而通过AJAX,与各类数据库进行无刷新操作!

而这就是小钟下一步要去做的事情:
一个基于JAVA+AJAX的,独立的、开源的书目TAGGING系统,敬请期待。

一点补充:在上面的webbridge.asp文件中,仅仅通过判断传入的参数是否为数字而确定是不是ISBN号存在一些bug,建议根据来源页面判断传入的参数是检索词还是ISBN号。在ASP中,判断来源页面的环境变量为HTTP_REFERER

Tags: , , ,