Python-Camelot извлекает пустые таблицы - PullRequest
0 голосов
/ 02 января 2019

Я использую Camelot для извлечения нескольких разделов PDF с помощью следующей команды.

cgl_section = camelot.read_pdf(filename, flavor='stream', 
              table_areas=['35,490,155,483', '53,480,110,470', '117,480,155,470', 
                           '38,469,106,456', '39,454,105,445', '38,430,155,420', 
                           '38,418,77, 410'])

Это нормально работает, когда PDF действительно содержит данные в этих областях. Но я не ожидаю данных в каждом проанализированном PDF, некоторые возвращаются пустыми. Я получаю следующую ошибку, когда возвращаемые данные не являются таблицей, а имеют только один столбец.

UserWarning: No tables found in table area 1

и

ValueError: min() arg is an empty sequence

Мне нужен способ извлекать эти конкретные области во всех PDF-файлах, но после игнорировать пустые. Необходимо уметь использовать извлеченные данные упорядоченным образом.

Открыт для любых других предложений

ТИА

1 Ответ

0 голосов
/ 08 января 2019

Возможно, вам поможет опция table_regions (введена в версии 0.7).

https://camelot -py.readthedocs.io / en / master / user / advanced.html # define-table-region

When table_regions is specified, Camelot will only analyze the specified regions to look for tables.
...