Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
From 01060edd4b946823fb5799b0c78edf6afb70da36 Mon Sep 17 00:00:00 2001
From: Micha Moskovic <michamos@gmail.com>
Date: Wed, 30 Nov 2016 15:39:24 +0100
Subject: [PATCH] api: correct handling of non-ascii references
Signed-off-by: Micha Moskovic <michamos@gmail.com>
kbs: report numbers update
* Add new often cited report numbers, found with
invenio-scripts/unrecognized_report_numbers.py
* Remove broken pattern escaping
* Relax patterns to allow dropping leading 0
* Replace all ' ' patterns by 's' to allow additional spaces
* Cosmetic improvement: align second column
Signed-off-by: Micha Moskovic <michamos@gmail.com>
travis: support for legacy Python 2.6
Signed-off-by: Samuele Kaplun <samuele.kaplun@cern.ch>
engine: separate function for filetype detection
* refactor in order to decouple filetype detection from plaintext
extraction
Signed-off-by: Micha Moskovic <michamos@gmail.com>
api: remove stats
* INCOMPATIBLE the api now only returns the references, not the stats
* parse_references returns a tuple (references, stats) instead of a
dictionary with those two keys.
Signed-off-by: Micha Moskovic <michamos@gmail.com>
api: extraction of texkeys from PDF
* texkeys are extracted from the named destinations in the PDF in
extract_texkeys_from_url and extract_texkeys_from_file and if the number
of texkeys matches with the number of references found from text parsing
tests: new tests for texkey extraction
* Add tests for extract_texkeys_from_pdf, both for one- and two-column
layouts
* Refactor tests to get the pdf files as a fixture
Signed-off-by: Micha Moskovic <michamos@gmail.com>
filetype detection through python-magic
Signed-off-by: Micha Moskovic <michamos@gmail.com>
api: exceptions are used instead of status codes
* Make refextract more idiomatic, raising exceptions instead of
having (result, error) return values in functions.
* INCOMPATIBLE FullTextNotAvailable is renamed to
FullTextNotAvailableError.
* NEW There are two new exceptions, UnknownDocumentTypeError when the
file/URL is not a PDF or plain text and GarbageFullTextError when the
PDF fulltext extraction gives garbage.
* The exception raised when 'pdftotext' is not found is now
FileNotFoundError instead of Exception.
* Fix the utterly broken error handling in extract_references_from_url.
* Add tests for UnknownDocumentTypeError and
FullTextNotAvailableError.
Signed-off-by: Micha Moskovic <michamos@gmail.com>
---
.travis.yml | 12 +-
README.rst | 76 +++------
modules/docextract/lib/docextract_pdf.py | 10 +-
modules/docextract/lib/refextract_api.py | 81 ++++++----
modules/docextract/lib/refextract_engine.py | 54 +++----
modules/docextract/lib/refextract_errors.py | 12 +-
modules/docextract/lib/refextract_kbs.py | 4 -
modules/docextract/etc/report-numbers.kb | 231 ++++++++++++++++++++++------
modules/docextract/lib/refextract_pdf.py | 103 +++++++++++++
modules/docextract/lib/refextract_re.py | 6 +-
setup.py | 2 +
tests/conftest.py | 10 ++
tests/data/1508.05632v2.pdf | Bin 0 -> 500402 bytes
tests/test_api.py | 44 +++---
tests/test_engine.py | 88 +++++++----
tests/test_pdf.py | 128 +++++++++++++++
16 files changed, 623 insertions(+), 238 deletions(-)
create mode 100644 modules/docextract/lib/refextract_pdf.py
create mode 100644 tests/conftest.py
create mode 100644 tests/data/1508.05632v2.pdf
create mode 100644 tests/test_pdf.py
diff --git a/.travis.yml b/.travis.yml
index 2201b72..fd6cb7a 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -22,16 +22,18 @@
# waive the privileges and immunities granted to it by virtue of its status
# as an Intergovernmental Organization or submit itself to any jurisdiction.
-sudo: required
+sudo: false
language: python
python:
+ - '2.6'
- '2.7'
-before_install:
- - sudo apt-get update -qq
- - sudo apt-get install -y poppler-utils
+addons:
+ apt:
+ packages:
+ poppler-utils
install:
- pip install --upgrade pip
@@ -40,7 +42,7 @@ install:
- pip install -e .[docs,tests]
script:
- - sphinx-build -qnNW docs docs/_build/html
+ - if [ "${TRAVIS_PYTHON_VERSION}" = "2.7" ]; then sphinx-build -qnNW docs docs/_build/html; fi
- check-manifest
- python setup.py test
diff --git a/README.rst b/README.rst
index 18b0aa4..105eec0 100644
--- a/README.rst
+++ b/README.rst
@@ -76,32 +76,18 @@ To extract references from a publication full-text PDF:
from refextract import extract_references_from_file
reference = extract_references_from_file("some/fulltext/1503.07589v1.pdf")
print(reference)
- {
- 'references': [
- {'author': [u'F. Englert and R. Brout'],
- 'doi': [u'10.1103/PhysRevLett.13.321'],
- 'journal_page': [u'321'],
- 'journal_reference': ['Phys.Rev.Lett.,13,1964'],
- 'journal_title': [u'Phys.Rev.Lett.'],
- 'journal_volume': [u'13'],
- 'journal_year': [u'1964'],
- 'linemarker': [u'1'],
- 'title': [u'Broken symmetry and the mass of gauge vector mesons'],
- 'year': [u'1964']}, ...
- ],
- 'stats': {
- 'author': 15,
- 'date': '2016-01-12 10:52:58',
- 'doi': 1,
- 'misc': 0,
- 'old_stats_str': '0-1-1-15-0-1-0',
- 'reportnum': 1,
- 'status': 0,
- 'title': 1,
- 'url': 0,
- 'version': u'0.1.0.dev20150722'
- }
- }
+ [
+ {'author': [u'F. Englert and R. Brout'],
+ 'doi': [u'10.1103/PhysRevLett.13.321'],
+ 'journal_page': [u'321'],
+ 'journal_reference': ['Phys.Rev.Lett.,13,1964'],
+ 'journal_title': [u'Phys.Rev.Lett.'],
+ 'journal_volume': [u'13'],
+ 'journal_year': [u'1964'],
+ 'linemarker': [u'1'],
+ 'title': [u'Broken symmetry and the mass of gauge vector mesons'],
+ 'year': [u'1964']}, ...
+ ]
You can also extract directly from a URL:
@@ -110,29 +96,15 @@ You can also extract directly from a URL:
from refextract import extract_references_from_url
reference = extract_references_from_url("http://arxiv.org/pdf/1503.07589v1.pdf")
print(reference)
- {
- 'references': [
- {'author': [u'F. Englert and R. Brout'],
- 'doi': [u'10.1103/PhysRevLett.13.321'],
- 'journal_page': [u'321'],
- 'journal_reference': ['Phys.Rev.Lett.,13,1964'],
- 'journal_title': [u'Phys.Rev.Lett.'],
- 'journal_volume': [u'13'],
- 'journal_year': [u'1964'],
- 'linemarker': [u'1'],
- 'title': [u'Broken symmetry and the mass of gauge vector mesons'],
- 'year': [u'1964']}, ...
- ],
- 'stats': {
- 'author': 15,
- 'date': '2016-01-12 10:52:58',
- 'doi': 1,
- 'misc': 0,
- 'old_stats_str': '0-1-1-15-0-1-0',
- 'reportnum': 1,
- 'status': 0,
- 'title': 1,
- 'url': 0,
- 'version': u'0.1.0.dev20150722'
- }
- }
+ [
+ {'author': [u'F. Englert and R. Brout'],
+ 'doi': [u'10.1103/PhysRevLett.13.321'],
+ 'journal_page': [u'321'],
+ 'journal_reference': ['Phys.Rev.Lett.,13,1964'],
+ 'journal_title': [u'Phys.Rev.Lett.'],
+ 'journal_volume': [u'13'],
+ 'journal_year': [u'1964'],
+ 'linemarker': [u'1'],
+ 'title': [u'Broken symmetry and the mass of gauge vector mesons'],
+ 'year': [u'1964']}, ...
+ ]
diff --git a/modules/docextract/lib/docextract_pdf.py b/modules/docextract/lib/docextract_pdf.py
index 7c09b36..0cdeccb 100644
--- a/modules/docextract/lib/docextract_pdf.py
+++ b/modules/docextract/lib/docextract_pdf.py
@@ -43,6 +43,7 @@ import subprocess
from six import iteritems
from ..references.config import CFG_PATH_PDFTOTEXT
+from ..references.errors import GarbageFullTextError
# a dictionary of undesirable characters and their replacements:
UNDESIRABLE_CHAR_REPLACEMENTS = {
@@ -480,18 +481,18 @@ def convert_PDF_to_plaintext(fpath, keep_layout=False):
Take the path to a PDF file and run pdftotext for this file, capturing
the output.
+ It raises GarbageFullTextError when this output is garbage.
@param fpath: (string) path to the PDF file
@return: (list) of unicode strings (contents of the PDF file translated
into plaintext; each string is a line in the document.)
"""
if not os.path.isfile(CFG_PATH_PDFTOTEXT):
- raise Exception('Missing pdftotext executable')
+ raise FileNotFoundError('Missing pdftotext executable')
if keep_layout:
layout_option = "-layout"
else:
layout_option = "-raw"
- status = 0
doclines = []
# Pattern to check for lines with a leading page-break character.
# If this pattern is matched, we want to split the page-break into
@@ -525,7 +526,6 @@ def convert_PDF_to_plaintext(fpath, keep_layout=False):
# finally, check conversion result not bad:
if pdftotext_conversion_is_bad(doclines):
- status = 2
- doclines = []
+ raise GarbageFullTextError("Garbage fulltext in '{0}'".format(fpath))
- return (doclines, status)
+ return doclines
diff --git a/modules/docextract/lib/refextract_api.py b/modules/docextract/lib/refextract_api.py
index c59b4d9..7620cab 100644
--- a/modules/docextract/lib/refextract_api.py
+++ b/modules/docextract/lib/refextract_api.py
@@ -30,18 +30,22 @@ from a raw string.
import os
+import sys
import requests
+import magic
from tempfile import mkstemp
+from itertools import izip
from .engine import (get_kbs,
get_plaintext_document_body,
parse_reference_line,
parse_references,
parse_tagged_reference_line)
-from .errors import FullTextNotAvailable
+from .errors import FullTextNotAvailableError
from .find import (find_numeration_in_body,
get_reference_section_beginning)
+from .pdf import extract_texkeys_from_pdf
from .tag import tag_reference_line
from .text import extract_references_from_fulltext, rebuild_reference_lines
@@ -49,8 +53,12 @@ from .text import extract_references_from_fulltext, rebuild_reference_lines
def extract_references_from_url(url, headers=None, chunk_size=1024, **kwargs):
"""Extract references from the pdf specified in the url.
- The first parameter is the path to the file
- It raises FullTextNotAvailable if the file does not exist.
+ The first parameter is the URL of the file.
+ It returns a list of parsed references.
+
+ It raises FullTextNotAvailableError if the URL gives a 404,
+ UnknownDocumentTypeError if it is not a PDF or plain text
+ and GarbageFullTextError if the fulltext extraction gives garbage.
The standard reference format is: {title} {volume} ({year}) {page}.
@@ -66,7 +74,6 @@ def extract_references_from_url(url, headers=None, chunk_size=1024, **kwargs):
>>> extract_references_from_url(path, override_kbs_files={'journals': 'my/path/to.kb'})
- It raises FullTextNotAvailable if the url gives a 404
"""
# Get temporary filepath to download to
filename, filepath = mkstemp(
@@ -74,24 +81,19 @@ def extract_references_from_url(url, headers=None, chunk_size=1024, **kwargs):
)
os.close(filename)
- req = requests.get(
- url=url,
- headers=headers,
- stream=True
- )
- if req.status_code == 200:
+ try:
+ req = requests.get(
+ url=url,
+ headers=headers,
+ stream=True
+ )
+ req.raise_for_status()
with open(filepath, 'wb') as f:
for chunk in req.iter_content(chunk_size):
f.write(chunk)
-
- try:
- try:
- references = extract_references_from_file(filepath, **kwargs)
- except IOError as err:
- if err.code == 404:
- raise FullTextNotAvailable()
- else:
- raise
+ references = extract_references_from_file(filepath, **kwargs)
+ except requests.exceptions.HTTPError as e:
+ raise FullTextNotAvailableError("URL not found: '{0}'".format(url)), None, sys.exc_info()[2]
finally:
os.remove(filepath)
return references
@@ -99,19 +101,23 @@ def extract_references_from_url(url, headers=None, chunk_size=1024, **kwargs):
def extract_references_from_file(path,
recid=None,
- reference_format="{title} {volume} ({year}) {page}",
+ reference_format=u"{title} {volume} ({year}) {page}",
linker_callback=None,
override_kbs_files=None):
"""Extract references from a local pdf file.
- The first parameter is the path to the file
- It raises FullTextNotAvailable if the file does not exist.
+ The first parameter is the path to the file.
+ It returns a list of parsed references.
+ It raises FullTextNotAvailableError if the file does not exist,
+ UnknownDocumentTypeError if it is not a PDF or plain text
+ and GarbageFullTextError if the fulltext extraction gives garbage.
+
The standard reference format is: {title} {volume} ({year}) {page}.
E.g. you can change that by passing the reference_format:
- >>> extract_references_from_file(path, reference_format="{title},{volume},{page}")
+ >>> extract_references_from_file(path, reference_format=u"{title},{volume},{page}")
If you want to also link each reference to some other resource (like a record),
you can provide a linker_callback function to be executed for every reference
@@ -121,18 +127,17 @@ def extract_references_from_file(path,
>>> extract_references_from_file(path, override_kbs_files={'journals': 'my/path/to.kb'})
- Returns a dictionary with extracted references and stats.
"""
if not os.path.isfile(path):
- raise FullTextNotAvailable()
+ raise FullTextNotAvailableError("File not found: '{0}'".format(path))
- docbody, dummy = get_plaintext_document_body(path)
+ docbody = get_plaintext_document_body(path)
reflines, dummy, dummy = extract_references_from_fulltext(docbody)
- if not len(reflines):
- docbody, dummy = get_plaintext_document_body(path, keep_layout=True)
+ if not reflines:
+ docbody = get_plaintext_document_body(path, keep_layout=True)
reflines, dummy, dummy = extract_references_from_fulltext(docbody)
- return parse_references(
+ parsed_refs, stats = parse_references(
reflines,
recid=recid,
reference_format=reference_format,
@@ -140,6 +145,13 @@ def extract_references_from_file(path,
override_kbs_files=override_kbs_files,
)
+ if magic.from_file(path, mime=True) == "application/pdf":
+ texkeys = extract_texkeys_from_pdf(path)
+ if len(texkeys) == len(parsed_refs):
+ parsed_refs = [dict(ref, texkey=[key]) for ref, key in izip(parsed_refs, texkeys)]
+
+ return parsed_refs
+
def extract_references_from_string(source,
is_only_references=True,
@@ -149,8 +161,8 @@ def extract_references_from_string(source,
override_kbs_files=None):
"""Extract references from a raw string.
- The first parameter is the path to the file
- It raises FullTextNotAvailable if the file does not exist.
+ The first parameter is the path to the file.
+ It returns a tuple (references, stats).
If the string does not only contain references, improve accuracy by
specifing ``is_only_references=False``.
@@ -159,7 +171,7 @@ def extract_references_from_string(source,
E.g. you can change that by passing the reference_format:
- >>> extract_references_from_url(path, reference_format="{title},{volume},{page}")
+ >>> extract_references_from_string(path, reference_format="{title},{volume},{page}")
If you want to also link each reference to some other resource (like a record),
you can provide a linker_callback function to be executed for every reference
@@ -167,7 +179,7 @@ def extract_references_from_string(source,
To override KBs for journal names etc., use ``override_kbs_files``:
- >>> extract_references_from_url(path, override_kbs_files={'journals': 'my/path/to.kb'})
+ >>> extract_references_from_string(path, override_kbs_files={'journals': 'my/path/to.kb'})
"""
docbody = source.split('\n')
if not is_only_references:
@@ -181,13 +193,14 @@ def extract_references_from_string(source,
reflines = rebuild_reference_lines(
docbody, refs_info['marker_pattern'])
- return parse_references(
+ parsed_refs, stats = parse_references(
reflines,
recid=recid,
reference_format=reference_format,
linker_callback=linker_callback,
override_kbs_files=override_kbs_files,
)
+ return parsed_refs
def extract_journal_reference(line, override_kbs_files=None):
diff --git a/modules/docextract/lib/refextract_engine.py b/modules/docextract/lib/refextract_engine.py
index a2bf9d2..59f74b5 100644
--- a/modules/docextract/lib/refextract_engine.py
+++ b/modules/docextract/lib/refextract_engine.py
@@ -30,6 +30,8 @@ import subprocess
from datetime import datetime
from itertools import chain
+import magic
+
from .config import (
CFG_REFEXTRACT_MARKER_CLOSING_REPORT_NUM,
CFG_REFEXTRACT_MARKER_CLOSING_AUTHOR_INCL,
@@ -44,6 +46,8 @@ from .config import (
CFG_PATH_GFILE
)
+from .errors import UnknownDocumentTypeError
+
from .tag import (
tag_reference_line,
sum_2_dictionaries,
@@ -1370,44 +1374,32 @@ def remove_leading_garbage_lines_from_reference_section(ref_sectn):
# Tasks related to conversion of full-text to plain-text:
+
def get_plaintext_document_body(fpath, keep_layout=False):
"""Given a file-path to a full-text, return a list of unicode strings
whereby each string is a line of the fulltext.
In the case of a plain-text document, this simply means reading the
- contents in from the file. In the case of a PDF/PostScript however,
+ contents in from the file. In the case of a PDF however,
this means converting the document to plaintext.
+ It raises UnknownDocumentTypeError if the document is not a PDF or
+ plain text.
@param fpath: (string) - the path to the fulltext file
@return: (list) of strings - each string being a line in the document.
"""
textbody = []
- status = 0
- if os.access(fpath, os.F_OK | os.R_OK):
- # filepath OK - attempt to extract references:
- # get file type:
- cmd_pdftotext = [CFG_PATH_GFILE, fpath]
- pipe_pdftotext = subprocess.Popen(
- cmd_pdftotext, stdout=subprocess.PIPE)
- res_gfile = pipe_pdftotext.stdout.read()
-
- if (res_gfile.lower().find("text") != -1) and \
- (res_gfile.lower().find("pdf") == -1):
- # plain-text file: don't convert - just read in:
- f = open(fpath, "r")
- try:
- textbody = [line.decode("utf-8") for line in f.readlines()]
- finally:
- f.close()
- elif (res_gfile.lower().find("pdf") != -1) or \
- (res_gfile.lower().find("pdfa") != -1):
- # convert from PDF
- (textbody, status) = convert_PDF_to_plaintext(fpath, keep_layout)
- else:
- # invalid format
- status = 1
+ mime_type = magic.from_file(fpath, mime=True)
+
+ if mime_type == "text/plain":
+ with open(fpath, "r") as f:
+ textbody = [line.decode("utf-8") for line in f.readlines()]
+
+ elif mime_type == "application/pdf":
+ textbody = convert_PDF_to_plaintext(fpath, keep_layout)
+
else:
- # filepath not OK
- status = 1
- return (textbody, status)
+ raise UnknownDocumentTypeError(mime_type)
+
+ return textbody
def parse_references(reference_lines,
@@ -1426,10 +1418,8 @@ def parse_references(reference_lines,
processed_references, counts, dummy_bad_titles_count = \
parse_references_elements(reference_lines, kbs, linker_callback)
- return {
- "references": build_references(processed_references, reference_format),
- "stats": build_stats(counts)
- }
+ return (build_references(processed_references, reference_format),
+ build_stats(counts))
def build_stats(counts):
diff --git a/modules/docextract/lib/refextract_errors.py b/modules/docextract/lib/refextract_errors.py
index 383d414..3e254b3 100644
--- a/modules/docextract/lib/refextract_errors.py
+++ b/modules/docextract/lib/refextract_errors.py
@@ -24,6 +24,16 @@
"""Custom exceptions."""
-class FullTextNotAvailable(Exception):
+class FullTextNotAvailableError(Exception):
"""Raised when we cannot access the document text."""
+
+
+class GarbageFullTextError(Exception):
+
+ """Raised when the fulltext extraction from the PDF gives garbage."""
+
+
+class UnknownDocumentTypeError(Exception):
+
+ """Raised when we don't know how to handle the document's MIME type."""
diff --git a/modules/docextract/lib/refextract_kbs.py b/modules/docextract/lib/refextract_kbs.py
index a0bc8f0..bff3e21 100644
--- a/modules/docextract/lib/refextract_kbs.py
+++ b/modules/docextract/lib/refextract_kbs.py
@@ -35,7 +35,6 @@ from .config import CFG_REFEXTRACT_KBS
from .regexs import (
re_kb_line,
re_regexp_character_class,
- re_report_num_chars_to_escape,
re_extract_quoted_text,
re_extract_char_class,
re_punctuation,
@@ -180,7 +179,6 @@ def institute_num_pattern_to_regex(pattern):
"""
simple_replacements = [
('9', r'\d'),
- ('9+', r'\d+'),
('w+', r'\w+'),
('a', r'[A-Za-z]'),
('v', r'[Vv]'),
@@ -189,8 +187,6 @@ def institute_num_pattern_to_regex(pattern):
('yy', r'\d\d'),
('s', r'\s*'),
(r'/', r'\/')]
- # first, escape certain characters that could be sensitive to a regexp:
- pattern = re_report_num_chars_to_escape.sub(r'\\\g<1>', pattern)
# now loop through and carry out the simple replacements:
for repl in simple_replacements:
diff --git a/modules/docextract/etc/report-numbers.kb b/modules/docextract/etc/report-numbers.kb
index 79ccb38..5f96d61 100644
--- a/modules/docextract/etc/report-numbers.kb
+++ b/modules/docextract/etc/report-numbers.kb
@@ -26,27 +26,26 @@ PATT SOL ---patt-sol
*****FermiLab*****
-< 9999>
-< 999>
-< yy 999 [AET ]>
-< yyyy 999 [AET ]>
-< yyyy 99>
+<s9?9?9?9>
+<syys9?9?9s[AET ]>
+<syyyys9?9?9s[AET ]>
FERMILAB CONF ---FERMILAB-Conf
-FERMILAB FN ---FERMILAB-FN
+FERMILAB FN ---FERMILAB-FN
FERMILAB PUB ---FERMILAB-Pub
-FERMILAB TM ---FERMILAB-TM
+FERMILAB TM ---FERMILAB-TM
FERMILAB DESIGN ---FERMILAB-Design
+FERMILABDESIGN ---FERMILAB-Design
FERMILAB THESIS ---FERMILAB-Thesis
FERMILAB MASTERS---FERMILAB-Masters
*****Fermilab DØ notes*****
-< 9999>
+<s9?9?9?9>
DØ NOTE---DØ-Note
*****Fermilab CDF*****
-< 9999>
+<s9?9?9?9>
CDF ---CDF
CDF-ANAL-ELECTROWEAK-CDFR ---CDF-ANAL-ELECTROWEAK-CDFR
@@ -85,41 +84,65 @@ CDF-TOP-PUBLIC ---CDF-TOP-PUBLIC
*****CERN*****
-< yy 999>
-<syyyy 999>
+<syys9?9?9>
+<syyyys9?9?9>
+AB NOTE ---AB-NOTE
ALEPH ---ALEPH
ALICE ---ALICE
ALICE INT ---ALICE-INT
ALICE NOTE ---ALICE-INT
+ALICE PUBLIC ---ALICE-PUBLIC
ATL CAL ---ATL-CAL
ATL COM ---ATL-COM
ATL COM SOFT ---ATL-COM-SOFT
ATL COM PUB ---ATL-COM-DAQ
ATL COM DAQ ---ATL-COM-DAQ
+ATL COM INDENT ---ATL-COM-INDENT
+ATL COM LUM ---ATL-COM-LUM
ATL COM MUON ---ATL-COM-MUON
ATL COM PHYS ---ATL-COM-PHYS
+ATL COMPHYS ---ATL-COM-PHYS
+ATLCOM PHYS ---ATL-COM-PHYS
TL COM PHYS ---ATL-COM-PHYS
+ATLAS COM PHYS ---ATLAS-COM-PHYS
ATL COM TILECAL ---ATL-COM-TILECAL
ATL COM LARG ---ATL-COM-LARG
+ATLAS COM CONF ---ATLAS-COM-CONF
+ATLASCOM CONF ---ATLAS-COM-CONF
+ATLAS COMCONF ---ATLAS-COM-CONF
+ATLAS CONF ---ATLAS-CONF
+ATLASCONF ---ATLAS-CONF
ATL DAQ ---ATL-DAQ
ATL DAQ CONF ---ATL-DAQ-CONF
+ATL DAQ PUB ---ATL-DAQ-PUB
+ATL DAQ PROC ---ATL-DAQ-PROC
ATL GEN ---ATL-GEN
+ATLAS HIGG ---ATLAS-HIGG
ATL INDET ---ATL-INDET
+ATL INDET PUB ---ATL-INDET-PUB
+ATL INDET PROC ---ATL-INDET-PROC
ATL LARG ---ATL-LARG
ATL MUON ---ATL-MUON
+ATL MUON PUB ---ATL-MUON-PUB
ATL PUB MUON ---ATL-PUB-MUON
ATL PHYS ---ATL-PHYS
-ATL PHYS PUB ---ATL-PHYS-PUB
-ATL PHYSPUB ---ATL-PHYS-PUB
-ATLPHYS PUB ---ATL-PHYS-PUB
+ATL PHYS CONF ---ATL-PHYS-CONF
ATL PHYS INT ---ATL-PHYS-INT
ATL PHYSINT ---ATL-PHYS-INT
ATLPHYS INT ---ATL-PHYS-INT
+ATL PHYS PUB ---ATL-PHYS-PUB
+ATL PHYSPUB ---ATL-PHYS-PUB
+ATLPHYS PUB ---ATL-PHYS-PUB
+ATLAS PHYS PUB ---ATL-PHYS-PUB
+ATL PHYS PROC ---ATL-PHYS-PROC
ATL TECH ---ATL-TECH
ATL TILECAL ---ATL-TILECAL
+ATL TILECAL PUB ---ATL-TILECAL-PUB
+ATL TILECAL PROC ---ATL-TILECAL-PROC
ATL SOFT ---ATL-SOFT
ATL SOFT PUB ---ATL-SOFT-PUB
+ATL SOFT PROC ---ATL-SOFT-PROC
ATL IS EN ---ATL-IS-EN
ATL IS QA ---ATL-IS-QA
ATL LARG PUB ---ATL-LARG-PUB
@@ -127,7 +150,10 @@ ATL COM LARG ---ATL-COM-LARG
TL COM LARG ---ATL-COM-LARG
ATLCOM LARG ---ATL-COM-LARG
ATL MAGNET PUB ---ATL-MAGNET-PUB
+ATL UPGRADE PUB ---ATL-UPGRADE-PUB
+ATL UPGRADE PROC ---ATL-UPGRADE-PROC
CERN AB ---CERN-AB
+CERN AB NOTE ---CERN-NOTE
CERN ALEPH ---CERN-ALEPH
CERN ALEPH PHYSIC ---CERN-ALEPH-PHYSIC
CERN ALEPH PUB ---CERN-ALEPH-PUB
@@ -149,41 +175,82 @@ CERN ATL DAQ ---CERN-ATL-DAQ
CERN ATL SOFT ---CERN-ATL-SOFT
CERN ATL SOFT INT ---CERN-ATL-SOFT-INT
CERN ATL SOFT PUB ---CERN-ATL-SOFT-PUB
+CERN ATS ---CERN-ATS
+CERNATS ---CERN-ATS
+CERN ATS NOTE ---CERN-ATS-NOTE
+CERNATS NOTE ---CERN-ATS-NOTE
+CERN BE ---CERN-BE
+CERN BE NOTE ---CERN-BE-NOTE
CERN CMS ---CERN-CMS
CERN CMS CR ---CERN-CMS-CR
+CERN CMS DP ---CERN-CMS-DP
CERN CMS NOTE ---CERN-CMS-NOTE
CERN CN ---CERN-CN
CERN DD ---CERN-DD
CERN DELPHI ---CERN-DELPHI
CERN ECP ---CERN-ECP
CERN EF ---CERN-EF
-CERN ECP ---CERN-EP
+CERN EP ---CERN-EP
CERN EST ---CERN-EST
CERN ETT ---CERN-ETT
+CERN INTC ---CERN-INTC
CERN IT ---CERN-IT
+CERN LCGAPP ---CERN-LCGAPP
CERN LHCB ---CERN-LHCB
+CERN LHCB DP ---CERN-LHCB-DP
+CERN LHCB CONF ---CERN-LHCB-CONF
+CERN LHCB INT ---CERN-LHCB-INT
+CERN LHCB PUB ---CERN-LHCB-PUB
CERN LHCC ---CERN-LHCC
+CERNLHCC ---CERN-LHCC
CERN LHC ---CERN-LHC
CERN LHC PHO ---CERN-LHC-PHO
CERN LHC PROJECT REPORT---CERN-LHC-Project-Report
CERN OPEN ---CERN-OPEN
+CERNOPEN ---CERNOPEN
+CERN PH EP ---CERN-PH-EP
+CERNPH EP ---CERN-PH-EP
+CERN PHEP ---CERN-PH-EP
+CERN PH LPCC ---CERN-PH-LPCC
+CERN PH TH ---CERN-PH-TH
CERN PPE ---CERN-PPE
+CERN PROCEEDINGS ---CERN-PROCEEDINGS
CERN PS ---CERN-PS
CERN SL ---CERN-SL
+CERN SL NOTE ---CERN-SL-NOTE
CERN SPSC ---CERN-SPSC
+CERNSPSC ---CERN-SPSC
CERN ST ---CERN-ST
CERN TH ---CERN-TH
CERN THESIS ---CERN-THESIS
+CERNTHESIS ---CERN-THESIS
CERN TIS ---CERN-TIS
CERN ATS ---CERN-ATS
+CERN ATSNOTE ---CERN-ATSNOTE
CERN ---CERN
+CLICDP NOTE ---CLICDP-NOTE
+CMS AN ---CMS-AN
CMS CR ---CMS-CR
+CMS DP ---CMS-DP
CMS NOTE ---CMS-NOTE
+CMSNOTE ---CMS-NOTE
CMS EXO ---CMS-EXO
+CMS TS ---CMS-TS
+DIRAC-NOTE ---DIRAC-NOTE
+DN ---DIRAC-NOTE
LHCB ---LHCB
+LHCB DP ---LHCB-DP
LHCB JOURNAL ---LHCB-JOURNAL
LHCB ANA ---LHCB-ANA
+LHCB CONF ---LHCB-CONF
+LHCBCONF ---LHCB-CONF
+LHCB INT ---LHCB-INT
+LHCB PUB ---LHCB-PUB
+LHCB PAPER ---LHCB-PAPER
+LHCB PROC ---LHCB-PROC
+LHCB TALK ---LHCB-TALK
LHCHXSWG ---LHCHXSWG
+LHCHXSWG DRAFT INT ---LHCHXSWG-DRAFT-INT
LHCHXSWG INT ---LHCHXSWG-INT
SN ATLAS ---SN-ATLAS
PAS SUSY ---CMS-PAS-SUS
@@ -210,32 +277,28 @@ ATLTILECAL PUB ---ATLTILECAL-PUB
ATLAS TECH PUB ---ATLAS-TECH-PUB
TLCOM MAGNET ---TLCOM-MAGNET
ATLLARG ---ATL-LARG
+SL NOTE ---SL-NOTE
+TOTEM ---TOTEM
+TS NOTE ---TS-NOTE
*****CERN MORE*****
-< yyyy 999>
-< yyyy 99>
-< yyyy 9>
-< yy 99>
-< yy 9>
-CERN LHCB ---CERN-LHCB
-CERN LHCC ---CERN-LHCC
-CERN PHESS ---CERN-PHESS
-
-
-*****CERN EVEN MORE*****
-< 9>
+<s9>
CMS UG TP ---CMS-UG-TP
*****CERN DIFFERENT FORMAT*****
-< 9999999>
+<s9999999>
CERN GE ---CERN-GE
+*****CERN with language*****
+<syyyys9?9?9sEng>
+
+CERN BROCHURE ---CERN-BROCHURE
+
*****LHC*****
-< 999>
-< 9999>
+<s9?9?9?9>
CERN CLIC NOTE ---CERN-CLIC-Note
LHC PROJECT NOTE ---LHC-Project-Note
@@ -248,10 +311,16 @@ ATC TT ID ---ATC-TT-ID
ATC TT IN ---ATC-TT-IN
LHCCP ---LHCCP
+***LHC OTHER FORMAT*****
+<syyyys9?9?9?9>
+
+CERN ACC ---CERN-ACC
+CERN ACC NOTE ---CERN-ACC-NOTE
+
*****KEK*****
-< 9999>
-< yy 999>
-< yyyy 999>
+<s9?9?9?9>
+<syys9?9?9>
+<syyyys9?9?9>
KEK CP ---KEK-CP
KEK INT ---KEK-Internal
@@ -261,26 +330,30 @@ KEK TH ---KEK-TH
*****DESY*****
-< yy 999>
-< yyyy 999>
+<syys9?9?9>
+<syyyys9?9?9>
DESY ---DESY
DESY M ---DESY-M
-DESY THESIS ---DESY-THESIS
+DESY THESIS ---DESY-THESIS
+DESYTHESIS ---DESY-THESIS
+DESY TESLA FEL ---DESY-TESLA-FEL
+DESY PROC ---DESY-PROC
+DESYPROC ---DESY-PROC
+TESLA FEL ---DESY-TESLA-FEL
*****DESY F*****
-<99 9>
-<9 99 99>
-<99 99 99>
+<99s9>
+<9s99s99>
+<99s99s99>
DESY F ---DESY-F
*****SLAC*****
-< 999>
-< 9999>
-< yy 99>
+<s9?9?9?9>
+<syys9?9>
SLAC AP ---SLAC-AP
SLAC PUB ---SLAC-PUB
@@ -290,26 +363,84 @@ SLAC WP ---SLAC-WP
*****Berkeley Lab*****
-< 99999>
-LBNL---LBNL
+<s9?9?9?9?9>
+LBNL ---LBNL
*****Argonne National Laboratory*****
-< yy 99>
+<syys9?9>
ANL HEP TR ---ANL-HEP-TR
*****Antares*****
-< yyyy 999>
+<syyyys9?9?9>
ANTARES SOFT ---ANTARES-SOFT
ANTARES PHYS ---ANTARES-Phys
ANTARES OPMO ---ANTARES-Opmo
-
*****LIGO*****
-< Tyy9999 00 a>
-
-LIGO---LIGO
+<sTyy9999s00sa>
+
+LIGO ---LIGO
+
+*****Pierre Auger*****
+<syyyys9?9?9>
+
+GAP ---GAP
+
+*****ILC*****
+<syyyys9?9?9>
+
+EUDET MEMO ---EUDET-MEMO
+EUDET REPORT ---EUDET-REPORT
+EUROTEV REPORT---EUROTEV-REPORT
+ILC NOTE ---ILC-NOTE
+ILC REPORT ---ILC-REPORT
+LC DET ---LC-DET
+LC PHSM ---LC-PHSM
+LC REP ---LC-REP
+LC REPORT ---LC-REPORT
+LC TOOL ---LC-TOOL
+LC TH ---LC-TH
+LCD NOTE ---LCD-NOTE
+
+*****IHEP*****
+<syys9?9?9>
+<syyyys9?9?9>
+
+IHEP AC ---IHEP-AC
+IHEP CEPC DR ---IHEP-CEPC-DR
+IHEP EP ---IHEP-EP
+IHEP TH ---IHEP-TH
+
+*****IPAC*****
+<syyyysaaaaa9?9?9>
+
+IPAC ---IPAC
+
+*****JINR*****
+<[EP]9?9syys9?9?9>
+<[EP]9?9syyyys9?9?9>
+
+JINR ---JINR
+
+*****Other institutes (standard format)*****
+<syys9?9?9?9>
+<syyyys9?9?9?9>
+
+BONN IR ---BONN-IR
+BONN IB ---BONN-IB
+DAMTP ---DAMTP
+ESS ---ESS
+EUCARD CON ---EUCARD-CON
+INO ---INO
+JAI ---JAI
+KFKI ---KFKI
+LPHE ---LPHE
+MPP ---MPP
+NIKHEF ---NIKHEF
+RAL TR ---RAL-TR
+SLS TME TA ---SLS-TME-TA
diff --git a/modules/docextract/lib/refextract_pdf.py b/modules/docextract/lib/refextract_pdf.py
new file mode 100644
index 0000000..29fed2f
--- /dev/null
+++ b/modules/docextract/lib/refextract_pdf.py
@@ -0,0 +1,103 @@
+# -*- coding: utf-8 -*-
+#
+# This file is part of refextract.
+# Copyright (C) 2016 CERN.
+#
+# refextract is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# refextract is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with refextract; if not, write to the Free Software Foundation, Inc.,
+# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
+#
+# In applying this license, CERN does not waive the privileges and immunities
+# granted to it by virtue of its status as an Intergovernmental Organization
+# or submit itself to any jurisdiction.
+
+import re
+
+from PyPDF2 import PdfFileReader
+
+from .regexs import re_reference_in_dest
+
+
+def extract_texkeys_from_pdf(pdf_file):
+ """
+ Extract the texkeys from the given PDF file
+
+ This is done by looking up the named destinations in the PDF
+
+ @param pdf_file: path to a PDF
+
+ @return: list of all texkeys found in the PDF
+ """
+ with open(pdf_file, 'rb') as pdf_stream:
+ pdf = PdfFileReader(pdf_stream, strict=False)
+ destinations = pdf.getNamedDestinations()
+ # not all named destinations point to references
+ refs = [dest for dest in destinations.iteritems()
+ if re_reference_in_dest.match(dest[0])]
+ if _destinations_in_two_columns(pdf, refs):
+ print("* PDF: Using two-column layout")
+
+ def sortfunc(dest_couple):
+ return _destination_position(pdf, dest_couple[1])
+
+ else:
+ print("* PDF: Using single-column layout")
+
+ def sortfunc(dest_couple):
+ (page, _, ypos, xpos) = _destination_position(pdf,
+ dest_couple[1])
+ return (page, ypos, xpos)
+
+ refs.sort(key=sortfunc)
+ # extract the TeXkey from the named destination name
+ return [re_reference_in_dest.match(destname).group(1)
+ for (destname, _) in refs]
+
+
+def _destinations_in_two_columns(pdf, destinations, cutoff=3):
+ """
+ Check if the named destinations are organized along two columns (heuristic)
+
+ @param pdf: a PdfFileReader object
+ @param destinations:
+
+ 'cutoff' is used to tune the heuristic: if 'cutoff' destinations in the
+ would-be second column start at the same position, return True
+ """
+ # iterator for the x coordinates of refs in the would-be second column
+ xpositions = (_destination_position(pdf, dest)[3] for (_, dest)
+ in destinations
+ if _destination_position(pdf, dest)[1] == 1)
+ xpos_count = {}
+ for xpos in xpositions:
+ xpos_count[xpos] = xpos_count.get(xpos, 0) + 1
+ if xpos_count[xpos] >= cutoff:
+ return True
+ return False
+
+
+def _destination_position(pdf, destination):
+ """
+ Gives a tuple (page, column, -y, x) representing the position of the
+ NamedDestination
+
+ This representation is useful for sorting named destinations and
+ assumes the text has at most 2 columns
+ """
+ pagewidth = pdf.getPage(
+ pdf.getDestinationPageNumber(destination)
+ ).cropBox.lowerRight[0]
+ # assuming max 2 columns
+ column = (2*destination.left) // pagewidth
+ return (pdf.getDestinationPageNumber(destination),
+ column, -destination.top, destination.left)
diff --git a/modules/docextract/lib/refextract_re.py b/modules/docextract/lib/refextract_re.py
index 315920d..e267538 100644
--- a/modules/docextract/lib/refextract_re.py
+++ b/modules/docextract/lib/refextract_re.py
@@ -260,6 +260,9 @@ re_isbn = re.compile(ur"""
re_kb_line = re.compile(ur'^\s*(?P<seek>[^\s].*)\s*---\s*(?P<repl>[^\s].*)\s*$',
re.UNICODE)
+# Pattern to recognise references in PDF named destinations
+re_reference_in_dest = re.compile(ur'^cite\.(.*)$', re.UNICODE)
+
# precompile some often-used regexp for speed reasons:
re_regexp_character_class = re.compile(ur'\[[^\]]+\]', re.UNICODE)
re_multiple_hyphens = re.compile(ur'-{2,}', re.UNICODE)
@@ -281,9 +284,6 @@ re_identify_bf_before_vol = \
# Patterns used for creating institutional preprint report-number
# recognition patterns (used by function "institute_num_pattern_to_regex"):
-# Recognise any character that isn't a->z, A->Z, 0->9, /, [, ], ' ', '"':
-re_report_num_chars_to_escape = \
- re.compile(ur'([^\]A-Za-z0-9\/\[ "])', re.UNICODE)
# Replace "hello" with hello:
re_extract_quoted_text = (re.compile(ur'\"([^"]+)\"', re.UNICODE), ur'\g<1>',)
# Replace / [abcd ]/ with /( [abcd])?/ :
diff --git a/setup.py b/setup.py
index 7369209..187fa63 100644
--- a/setup.py
+++ b/setup.py
@@ -37,6 +37,8 @@ requirements = [
'six>=1.7.2',
'requests>=2.8.1',
'unidecode>=0.4.18',
+ 'python-magic>=0.4.12',
+ 'PyPDF2>=1.26.0',
]
test_requirements = [
diff --git a/tests/conftest.py b/tests/conftest.py
new file mode 100644
index 0000000..b75132d
--- /dev/null
+++ b/tests/conftest.py
@@ -0,0 +1,10 @@
+import os
+
+import pytest
+
+@pytest.fixture
+def pdf_files():
+ path_to_pdfs = os.path.join(os.path.dirname(__file__), 'data')
+ pdfs = os.listdir(path_to_pdfs)
+ pdfs.sort()
+ return [os.path.join(path_to_pdfs, pdf) for pdf in pdfs]
diff --git a/tests/data/1508.05632v2.pdf b/tests/data/1508.05632v2.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..a36feb1542de1ad114449d65d78e3dce7e502ca7
GIT binary patch
literal 500402
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