Uipath - Как извлечь таблицу из PDF

Привет, я нашел видео и текст о том, как это сделать, но они не помогают с этой задачей. Я знаю, как получить одно значение, но не извлечь таблицу.

Я хочу, чтобы это экспортировалось в базу данных, если возможно, или в Excel. Но я не могу этого понять. Я даже попытался изменить параметр чтения "Изменить"

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

введите описание изображения здесь

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


person Jonas    schedule 21.01.2021    source источник
comment
Вы уже читали эту статью? edureka.co/blog/uipath-pdf-data-extraction   -  person kwoxer    schedule 21.01.2021
comment
@kwoxer Я этого не видел, но я говорил о том, что очистка данных не работает. И это не единственная цель, которую я ищу. Мне это нужно, чтобы понять, что я за таблицу отверстий =)   -  person Jonas    schedule 22.01.2021
comment
Программа не может понять структуру PDF, я думаю, мне нужна альтернатива.   -  person Jonas    schedule 22.01.2021
comment
Найдите Камелот здесь, в stackoverflow. Возможно, стоит попробовать: github.com/atlanhq/camelot   -  person pyano    schedule 22.01.2021
comment
Но думаю ему это нужно для UiPath.   -  person kwoxer    schedule 22.01.2021


Ответы (1)


К сожалению, в UiPath нет активности для чтения таблиц непосредственно из PDF-файлов. (На сегодняшний день.) Это были плохие новости. Хорошая новость в том, что вы можете перейти к содержимому PDF-файла. Либо вы получаете данные (в виде простого текста) напрямую с помощью UiPath.PDF.Activities.ReadPDFText, либо вам нужно использовать OCR. @kwoxer предоставил замечательную ссылку для объяснений по этой теме. Мне уже удалось извлечь данные из таблиц, содержащихся в документе PDF. На тот момент мне повезло: ReadPDFText все извлек. Элементы таблицы были разделены табуляцией (\ t). А в заголовке таблицы было слово, которого больше нигде не было в документе.

Просто в качестве идеи я поступил так:

  1. Извлеките текст из документа PDF с помощью UiPath.PDF.Activities.ReadPDFText.
  2. Создайте массив, элементами которого являются строки в документе. (Разделить с помощью Environment.NewLine и параметра StringSplitOptions.RemoveEmptyEntries)
  3. Пройдите по строкам в цикле (ForEach), пока не найдете заголовок таблицы. (StartsWith или Contains и т. Д.)
  4. Следующая строка принадлежит таблице до тех пор, пока она содержит табуляцию. (В противном случае стол окончен.)
  5. Разделить текущую строку на вкладку и сохранить ее в массиве: элементы массива - это отдельные ячейки строки.

Надеюсь, эта идея поможет.

person primehunter    schedule 27.01.2021