2009-12-04 1 views
66

PDF 문서에서 텍스트를 추출 할 수있는 PDF 라이브러리를 찾고 있습니다. 필자는 PyPDF를 살펴 봤는데, PDF 문서에서 텍스트를 아주 잘 추출 할 수 있습니다. 이 문제는 문서에 테이블이있는 경우 테이블의 텍스트가 나머지 문서 텍스트와 함께 인라인으로 추출된다는 것입니다. 이것은 유용하지 않고 문자가 깨지기 쉬운 텍스트 섹션을 생성하기 때문에 문제가 될 수 있습니다 (예 : 많은 숫자가 서로 섞여 있음).고급 PDF 구문 분석 (테이블이없는 텍스트 추출 등) : 최고의 라이브러리는 무엇입니까?

나는 조금 더 진보 된 것을 찾고 있습니다. PDF 문서에서 텍스트를 추출하려면 표 및 특수 서식을 제외하십시오. 거기에 도서관이 있나요? 아니면 이러한 섹션을 없애기 위해 출력 텍스트의 일부 후 처리를해야합니까?

답변

53

파이썬에서 다른 PDF 파서 인 PDFMiner을 살펴볼 수도 있습니다.

당신이 흥미를 가질 수있는 PDFMiner의 특징은 추출 할 때 텍스트 부분을 재 그룹화하는 방법을 제어 할 수 있다는 것입니다. 선, 단어, 문자 등의 간격을 지정하여이 작업을 수행 할 수 있습니다. 이렇게하면 두 개를 조합하여 원하는 내용 (문서의 다양성에 따라 다름)을 얻을 수 있습니다. PDFMiner는 페이지에있는 텍스트의 위치를 ​​알려주고, 객체 ID와 다른 것들로 데이터를 추출 할 수 있습니다. 따라서 PDFMiner를 파고 창조하십시오!

하지만 PDF에서 텍스트가 연속적이지는 않지만 페이지에 절대적으로 배치 된 많은 작은 문자 그룹으로 인해 문제를 푸는 것은 쉽지 않습니다. PDF의 초점은 레이아웃을 손상되지 않게 유지하는 것입니다. 그것은 콘텐츠 지향적이 아니고 프리젠 테이션 지향적입니다.

+1

PDFMiner가 재미있어합니다. 필자는 XML 출력을 사용하여 파싱하여 원하지 않는 것을 무시할 수 있습니다. 여전히 상당한 후 처리가 필요하지만 지금은 아마도 최상의 솔루션 일 것입니다. 고맙습니다. –

+0

@Etienne, PDF에도 다른 언어 문자가있는 경우이 기능을 사용할 수 있습니까? –

+0

다른 언어 문자와도 작동해야합니다. 문서 작성자 : CJK 언어 및 세로 쓰기 스크립트가 지원됩니다. 가장 좋은 방법은 그것을 테스트하십시오! – Etienne

-1

시각적으로 비슷한 PDF는 제작 방법에 따라 크게 다른 구조를 가질 수 있기 때문에 해결이 어려운 문제입니다. 최악의 경우 도서관은 기본적으로 OCR처럼 행동해야합니다. 반면에 PDF에는 표 및 그림을 쉽게 제거 할 수있는 충분한 구조 및 메타 데이터가 포함될 수 있으며이를 활용하여 라이브러리를 활용할 수 있습니다.

PDF의 다양한 문제를 해결할 수있는 오픈 소스 도구가 없다는 것을 확신합니다. 그러나 여러분이 요구하는 것을 정확하게 수행한다고 주장하는 상용 소프트웨어에 대해 들어 보았습니다. 인터넷 검색을하는 동안 당신이 그들과 마주 치게 될 것이라고 확신합니다.

관련 문제