06042010 Python
普段はCAM::PDFを使っているのだけど、pythonでPDFからdoiを抽出したくなったのでpyPdfを使ってみた。
#!/usr/bin/env python
# -*- encoding:utf-8 -*-
from pyPdf import PdfFileReader
import re
doi_re = re.compile("10.(\d)+/([^(\s\>\"\<)])+")
input = PdfFileReader(file("1267.full.pdf", "rb"))
text = input.getPage(0).extractText()
m = doi_re.search(text)
print m.group(0)
結果
10.1124/dmd.107.019711.ABBREVIATIONS:PKPD,pharmacokinetic-pharmacodynamic;HGF,hepatocytegrowthfactor;PF02341066,
dmdだとdoiと文字の境目が切れないので余計な文字もついてきてしまうなぁ。prefixとsuffixを見ながら判断するようにするのがいいかな。
それにしても、meta情報のtitleに埋め込まれてたり、本文の1page目に書いてあったり、ファイル名そのものだったりと、論文からdoiを抽出するのは結構めんどくさいんだよなぁ。
Java並行処理プログラミング ―その「基盤」と「最新API」を究める―



Machine Learning: An Algorithmic Perspective (Chapman & Hall/Crc Machine Learning & Patrtern Recognition)
グラフィカルモデリング (統計ライブラリー)
パターン認識と機械学習 下 - ベイズ理論による統計的予測
心を鬼にして叱るより 無理にでもほめなさい
Pharmacokinetic-Pharmacodynamic Modeling and Simulation
アサーティブ仕事術―気持ちが伝わる!意見が通る!
いい仕事をする人の3つの断り方!
Rの基礎とプログラミング技法