Drkcore

06 04 2010 Python Tweet

pyPdfでdoiを抽出する

普段は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を抽出するのは結構めんどくさいんだよなぁ。

About

  • もう5年目(wishlistありマス♡)
  • 最近はPythonとDeepLearning
  • 日本酒自粛中
  • ドラムンベースからミニマルまで
  • ポケモンGOゆるめ

Tag

Python Deep Learning javascript chemoinformatics Emacs sake and more...

Ad

© kzfm 2003-2021