Python-PDFTables解析忽略列之间的空格

时间:2018-04-03 05:46:48

标签: python parsing pdf pdf-parsing

我正在尝试使用pdftables python库解析pdf表。但它是组合列并忽略空格。

这是我的代码:

pdf_page = get_pdf_page(fileobj, page)
tables = page_to_tables(pdf_page)

pdf文件中表格的结构: Structure of tables in pdf files

输出: Combing the elements of columns ignoring spaces in first 6 columns next one are correct

1 个答案:

答案 0 :(得分:1)

如果您意识到pdf的误解,可以避开一些pdf挫折,并且可以轻松读取9到100以下的任何数字:读取数字,直到获得2位数字(11至99)或1位数字组合(0-9) )或10。如果您有10,则可以在字符串的第3个数字后加上0,但不能加上0以外的任何其他数字。

我用python表达的自我要比英语xD更好,我希望这对您有帮助:

def split(str):
    number = '0'
    numbers = []
    for char in str:
        if int(char) == 0 and int(number) == 10:
            numbers.append(int(number + char))
            number = '0'
        elif int(number) > 9 and int(number) < 100 and int(char) != 0:
            numbers.append(int(number))
            number = char
        elif int(number) >= 0 and int(number) < 10:
            number = number + char
    if int(number) > 0:
        numbers.append(int(number))
    return numbers

例如,如果我使用以下代码,则使用此代码:

split('25106387100')

它返回

[25, 10, 63, 87, 100]

然后使用此代码,您可以将任何字符串分割为10到100之间的数字,如果您需要分割一位数字,则问题就变成了这种情况,在这种情况下,您可以在0-9条件内添加一个条件来检测'isdigit pdf中的()'具有数字位置,从而将pdf的处理量减至最少