Звучит так, как будто вы нашли решение, но если вы когда-нибудь захотите сделать это без веб-службы или вам нужно собрать данные, исходя из их точного расположения на странице PDF, могу ли я предложить свою библиотеку, pdfquery ? По сути, он превращает PDF в дерево lxml, которое можно выложить в виде XML или проанализировать с помощью XPath, PyQuery или чего-либо еще, что вы хотите использовать.
Чтобы использовать его, после сохранения файла на диск вы должны вернуть pdf = pdfquery.PDFQuery(name_pdf)
или передать объект файла urllib напрямую, если вам не нужно его сохранять. Чтобы получить XML для анализа с BeautifulSoup, вы можете сделать pdf.tree.tostring()
.
Если вы не возражаете против использования селекторов в стиле JQuery, есть интерфейс PyQuery с позиционными расширениями, который может быть довольно удобным. Например:
balance = pdf.pq(':contains("Your balance is")').text()
strings_near_the_bottom_of_page_23 = [el.text for el in pdf.pq('LTPage[page_label=23] :in_bbox(0, 0, 600, 200)')]