2008-09-22 3 views
2

Office 문서 (사용자 정의 크롤러 용)의 내용을 읽을 수 있습니다.Office 문서 구문 분석

읽을 필요가있는 사무용 버전은 2000 년에서 2007 년까지입니다. 저는 주로 단어를 크롤링하고, 엑셀 및 파워 포인트 문서를 만들고 싶습니다.

서식을 검색하고 싶지 않고 텍스트 만 검색하려고합니다.

크롤러는 lucene.NET을 기반으로합니다. 도움이 될 수 있으면 C#을 사용합니다.

은 이미 PDF

답변

1

다음은 Word Primary Interop 어셈블리를 사용하여 Word 문서의 텍스트를 가져 오는 기본 코드를 제공하는 Krishnan LN의 nice little post on c-charpcorner입니다.

기본적으로 Word 문서에서 "WholeStory"속성을 가져 와서 클립 보드에 붙여 넣은 다음 클립 보드에서 가져 와서 텍스트 형식으로 변환합니다. 클립 보드 단계는 서식을 제거하기 위해 수행됩니다.

PowerPoint의 경우 이와 비슷한 작업을 수행하지만 슬라이드를 반복 한 다음 모양을 통해 각 슬라이드 루프를 반복하고 각 모양의 "TextFrame.TextRange.Text"속성을 가져와야합니다.

Excel의 경우 Excel은 OleDb 데이터 원본이 될 수 있으므로 ADO.NET을 사용하는 것이 가장 쉽습니다. 이 기술을 설명하는 good post by Laurent Bugnion입니다.

1

유일한 단점 excelent 오픈 소스 프로젝트 POI가있다을 구문 분석 iTextSharp를 사용 - 그것은 자바를 위해 작성되었습니다. .net port은 어떻게 든 매우 베타 버전입니다.

1

Here은 Word 문서를 일반 텍스트로 변환하기위한 다양한 도구 목록을 제공합니다.이 도구를 사용하면 무엇이든 할 수 있습니다.

3

이미 Lucene.NET을 사용하고 있다면 이미 사용 가능한 다양한 IFilter를 활용하고 싶을 것입니다. 오픈 소스 SeekAFile 프로젝트를 살펴보십시오. IFilter를 사용하여 IFilter를 사용할 수있는 모든 파일 형식에서이 정보를 열고 추출하는 방법을 보여줍니다. Word, Excel, Powerpoint, PDf 및 기타 일반적인 문서 형식의 IFilter가 있습니다.

0

DtSearch (www.DtSearch.com)를 확인해보십시오. 주로 검색 도구이지만 많은 수의 파일 유형에서 텍스트를 추출하는 훌륭한 작업을 수행하며 Oracle/Stellent OutsideIn 기술이나 Autonomy에서 제공하는 것과 같은 다른 옵션보다 상당히 저렴합니다.

저는 수년간 DtSearch를 사용해 왔으며 이러한 유형의 작업에 없어서는 안될 필수 항목입니다.

관련 문제