Как я могу напечатать таблицы в файле.pdf, используя python
CalledProcessError: Команда '['java', '-Dfile.encoding=UTF8', '-jar', 'C:\Users\vijv2c13136\AppData\Local\Continuum\anaconda2\lib\site-packages\tabula\tabula-1.0.2-jar-with-dependencies.jar', '--pages', 'all', '--guess', '--format', 'JSON', 'TONY.pdf']' вернули ненулевой выход статус 2
Когда я пытаюсь распечатать таблицы в файле.pdf. Это показывает эту конкретную ошибку.
from tabula import wrapper
print(wrapper.read_pdf("TONY.pdf", multiple_tables=True,pages="all")
Это мой код для извлечения таблицы из файла.pdf. Но это показывает вышеуказанную ошибку, когда я пытаюсь распечатать.
2 ответа
Один из способов записать таблицу в pandas dataframe, а затем сохранить ее. (даже отображал это)
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
fig.patch.set_visible(False)
ax.axis('off')
ax.axis('tight')
df = pd.DataFrame(np.random.randn(10, 4), columns=list('ABCD'))
ax.table(cellText=df.values, colLabels=df.columns, loc='center')
fig.tight_layout()
plt.show()
plt.savefig("tablepdf.pdf", bbox_inches='tight')
Нет реальной необходимости использоватьdataframes
, просто выполните:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.axis('off')
ax.table(cellText=[
['row1', 'row1'],
['row2', 'row2']
],
colLabels=['col1', 'col2'],
loc='center')
fig.tight_layout()
plt.savefig("table.pdf", bbox_inches='tight')