国家图书馆民国期刊全文下载方法

几个月前,一位网友在“电子版民国图书和期刊”下留言,询问如何使用FlashGet下载国图民国期刊。在解答了 FlashGet 问题之后,通过与之多次e-mail交流,又解决了文件格式问题,并且由此了解到了下载链接、最佳阅读软件,掌握了全文下载的各个环节。应该说,我固然帮ta解决了问题,但我从ta那儿获得的更多。

事情完后,我并没有打算把下载方法写成博文。因为对我来说,那似乎是个禁忌──自己也做这个行当,知道图书馆在多种选项中确定逐页浏览的目的就是不希望全文下载。就我而言,主要是担心下载后电子书的去向不可预知,因为中国的互联网最不缺的就是强盗小偷。
自然也明白,自己不过是一只鸵鸟,把头埋进沙堆,好象问题就不存在了。其实在图书馆之外的社区,有很多检索高手,他们可以解决惯用高价数据库的图书馆人难以想像的问题──以前bujai就曾多次谈起,而此次我得以掌握下载方法,也全赖网友提供的相关信息。

但事情并没有就这样过去。前两天,又一位网友来信,询问如何批量下载国图民国期刊。思之良久,决定把详细步骤告诉他以后,写成此文,广而告之。一方面,需要下载民国期刊的人,绝大部分都是些研究者,为他们提供方便,对图书馆也是天经地义的事。另一方面,所谓道高一尺、魔高一丈,如果国图方面认为这是个需要弥补的漏洞,也好让他们知道大门早已洞开,赶紧想法堵上吧!

(update 2007-12-1:
请慎用此法。反精灵留言:“您这是害人呵!国图有防恶意下载的措施,凡是恶意下载,会被封ID的。”)

(update 2008-9-12:
国家图书馆二期开馆,网站改版,民国专栏的图书、期刊、法律文献一律改用PDF方式阅读,以下方法失效!)

国图民国期刊整册下载方法

先在国家图书馆民国期刊网站下载专用阅读器NLCReader后安装,然后“检索”到自己所需期刊。接下来的全文下载步骤如下:

1、先获取各页面的URL
使用阅读器打开所需卷期(单册),点击菜单"章节"后,侧栏会出现章节目录。任意选择一个,用鼠标右键获取页面链接(复制快捷方式)。以《通商海关华洋贸易全年总册》为例,第一册“1905年1904卷”的某个链接为:
http://res1.nlc.gov.cn:9080/dob/servlet/getPart?id=00J0027650001&section=Data&pid=4001400
则此册首页的链接为:
http://res1.nlc.gov.cn:9080/dob/servlet/getPart?id=00J0027650001&section=Data&pid=4000100
阅读器右下角有总页数22,据此,末页链接为:
http://res1.nlc.gov.cn:9080/dob/servlet/getPart?id=00J0027650001&section=Data&pid=4002200

2、用网际快车软件(flashget)批量下载
运行FLASHGET,在"任务"菜单中"添加成批任务",按示例做。以上面的链接为例,在URL部分输入:
http://res1.nlc.gov.cn:9080/dob/servlet/getPart?id= 00J0027650001&section=Data&pid=400(*)00
然后设定从01到22,通配符长度为2(2位数字),然后按"确定"就OK了。如果总页数为3位数(如125),则最后部分改为40(*)00,然后设定从001到125,通配符长度为3。

3、使用XNview浏览、打印
下载后的页面是JBG格式的文件。下载后文件名为getpart(*)(*为数字),没有扩展名,需要将文件扩展名改为.jbg。
有几种软件可以浏览JBG格式的文件。如果采用XNview,可以只改第一个文件后缀,然后采用前后翻页的方法看各页并打印。
由于各页文件名都是getpart,批量下载时以下载完成先后加后续数字,所以实际上浏览时的顺序与原刊不同。如果看打印稿,可以在打印后,按页面标示的页码重新理一下顺序;如果看电子稿,可根据实际顺序重新命名文件。如果不幸碰到一册中多段标页的情况(在民国期刊中也不少见),就没有办法了。要保证准确,或许只能逐页核对(那与非整册下载也没多大差别了)。

参见:
卓虎学术:绝对可用的中国数字图书馆入口及其下载方法

日本旧忆·“萤族”与“粗大垃圾”

十年前,作为司书(图书馆员)去日本关西国际交流中心研修半年。今春为朋友筹划日本行程时,曾翻出十年前的日记,确认某些记忆是否失真。过后,把当年日记细细看了一遍,回想起很多几乎遗忘的故事。十月正是当年启程之时,从今天开始逐步记之。

中心有一些教师是外聘的,田中先生即是其中之一。先生年纪不大却头发花白,身材不高却颇有风度,声音带有磁性,授课很受大家欢迎。课时或聊天,不免会讲到各地男女,比如中国男人做家务什么的。此时,先生会讲一些日本男人的“悲惨”故事,其生动性,与上新浪首页的那篇“日本女人温顺的背后有男人许多憋屈与无奈”对照,绝对让人不容置疑。至今记得其中三则:

其一,日本有“ほたる族”(萤族)一词,指的是日本男人在家中不能抽烟。晚上烟瘾来了,只能去阳台。男人们在各自的阳台上抽烟,烟火在黑夜里一闪一闪,犹如萤火虫。
其二,以前每逢发工资的日子,妻子会特别准备好酒好菜,收到丈夫拿回家的工资后,还有好言好语。后来工资发到掌握在妻子手上的银行卡,好酒好菜、好言好语就全免了。
其三,退休后的男人被称为“粗大ごみ”,也就是垃圾分级中的大件垃圾。因为男人从年轻时即开始拼命工作,到退休后,既没有培养起自己的兴趣,又不会做家务,在家无所事事又处处碍事,就像大件垃圾那样麻烦。

附记:
其实当年在公共场合,很少看到男人吸烟,倒是有不少年轻女子吸烟;
在日本,处理大件垃圾需要特别申请而不能随意丢弃。

又一个开源OPAC——Fac-Back-OPAC

    独立于ILS的新OPAC越来越多,不少还是开源的,最近出现的例子就是Fac-Back-OPAC (faceted backup OPAC),一个分面OPAC,可作为图书馆集成系统OPAC的替代品。

    项目源于Casey Durfee在今年code4lib会议上提出的250行左右的“开源Endeca”代码,使用Solr(http://lucene.apache.org/solr)和Django(http://djangoproject.org/),可以实现类似于Endeca和AquaBrowser的分面功能。Casey在西雅图公共图书馆采用杜威分类法的Horizon系统上实现。
    Dan Scott下载Casey的代码后,用于Laurentian大学图书馆,该馆是采用国会分类法的Unicorn系统。据称只花了两个晚上就有不错的表现了。
    Mike Beccaria同样使用Casey的代码并加以强化,现在Paul Smith学院已经使用了Fac-Back-OPAC。
    Casey也加入该项目,并贡献出称为Helios的最新代码,具有标签云及其他功能。目前可以在西雅图公共图书馆目录中看到挺有意思的标签云显示选项。
    Mike Beccaria和Dan Scott在最新一期Computers in Libraries上发表文章 "Fac-Back-OPAC: An Open Source Interface to Your Library System" 介绍该项目。文章最后说,Fac-Back-OPAC尚在幼年期,还有很多成长的空间。Paul Smith学院打算在今秋监测用户行为,在基于用户需求与检索行为的前提下继续开发。打算强化的附加功能如用户书单、杜威法/LC主题浏览、全MARC显示,或者Web 2.0工具如标签、用户评论。作者们期望感兴趣者的加入。

    文章中有一节(Technology Building Blocks),介绍Fac-Back-OPAC的实现方法,称其成功大部分直接归功于那些开源组件:Solr, marc4j, Django。文后还有相关软件链接(More About the Software and Sites Mentioned in This Article)。
    从MARC记录经过处理成为一个可检索文件的生命周期如下,可供新型OPAC开发者参考:

第一步:从ILS到MARC
像北卡州及其他机构一样,在ILS之外建立目录,始于每晚导出所有MARC记录与馆藏记录。在首次导出后,可以只导出新的或有变化的记录,以更新Fac-Back-OPAC中的实例(instance,记录集?)。

第二步,从MARC到MARCXML:使用marc4j和Jython
由于MARC格式不适合传统搜索引擎标引,因之使用marc4j库将每条MARC记录转换成更易于处理的MARCXML格式。由于Solr只能理解UTF-8,还要将所有记录由MARC-8转换成UTF-8。此外,使用Jython编程语言(运行在Java虚拟机上的Python编译器)以控制marc4j,并用简单的Python句法以控制其余索引过程。

第三步,索引记录:使用Solr
Solr搜索解决方案建立在提供Web服务的企业级Lucene搜索引擎上,简化文件索引、增加附加功能如分面检索结果。每个Solr实例可配置一个Schema,描述文件的字段,以及这些字段的类型(如文本型、日期型或整数型)。Fac-Back-OPAC使用一个带书目Schema的Solr实例,运行于Jetty应用服务器。处理每个MARCXML记录,抽取感兴趣的字段用于分面与索引,生成一个XML文件,作为一个字串,发送到Solr实例,用于通过HTTP POST方式做索引。

第四步,检索界面:使用Django
Django是一个流行的Web应用框架,以Python写成,实现模型-视图-控制器(model-view-controller, MVC)模式,还能提供对一些特性的支持,如缓存搜索结果供展示、翻译成不同的语言、设定RSS种子。只需编辑HTML格式的模板,就可以定制Django的三个模板,即最初检索屏、检索结果页及详细显示页。

相关链接:
Google Code网站上的项目主页:
fac-back-opac: Faceted online public access catalogue; use as an alternate interface
论文:
Fac-Back-OPAC: An Open Source Interface to Your Library System / by Mike Beccaria and Dan Scott. Computers in Libraries, October 2007 (Vol. 27 No. 9)
实例:
西雅图公共图书馆目录(http://catalog.spl.org/catalog/)
Paul Smith学院目录(http://library.paulsmiths.edu/catalog/
[update 2007-10-8: 相关截图见Google Docs共享的演示文稿]

关于开源OPAC,参见:
开源OPAC发布:VuFind (2007-07-23)
二小时建立分面OPAC (2007-04-08)
AADL的新版OPAC (2007-01-22)
开源OPAC也精彩 (2007-01-14)
从获奖看国外流行的开源软件 (2006-12-07)