PDF 파일은 정보 및 데이터 공유를 위해 인터넷에서 널리 사용됩니다. 모든 플랫폼에서 볼 때 문서의 충실도를 유지하기 때문에 매우 인기가 있습니다. 그러나 소스에 대한 제어 권한이 없으며 일부 파일은 스캔된 형식으로 공유됩니다. 이미지를 PDF로 캡처하고 나중에 파일에서 내용을 추출해야 하는 경우가 있습니다. 따라서 실행 가능한 솔루션은 OCR 작업을 수행하고 텍스트를 추출하는 것입니다. 그러나 OCR 작업 후 파일을 보존해야 하는 경우 PDF 형식으로 변환하는 것이 실행 가능한 솔루션입니다. 이 기사에서는 Python을 사용하여 스캔한 PDF를 텍스트 PDF로 변환하는 방법에 대한 단계를 설명합니다.
OCR PDF API
Aspose.PDF Cloud SDK for Python은 Aspose.PDF Cloud의 래퍼입니다. Python 애플리케이션 내에서 모든 PDF 파일 처리 기능을 수행할 수 있습니다. Adobe Acrobat 또는 다른 응용 프로그램 없이 PDF 파일을 조작합니다. 따라서 SDK를 사용하기 위해서는 먼저 SDK를 설치해야 하며 PIP 및 GitHub 저장소를 통해 다운로드할 수 있습니다. 이제 터미널/명령 프롬프트에서 다음 명령을 실행하여 최신 버전의 SDK를 시스템에 설치하십시오.
pip install asposepdfcloud
MS 비주얼 스튜디오
Visual Studio 프로젝트 내의 Python 프로젝트에 참조를 직접 추가할 수도 있습니다. Python 환경 창에서 패키지로 asposepdfcloud를 검색하십시오. 설치 프로세스를 완료하려면 아래 이미지에 번호가 매겨진 단계를 따르십시오.
Aspose.Cloud 대시보드
우리의 API는 권한이 있는 사람만 액세스할 수 있으므로 다음 단계는 Aspose.Cloud 대시보드에서 계정을 만드는 것입니다. GitHub 또는 Google 계정이 있는 경우 간단히 가입하거나 Create a new Account 버튼을 클릭하고 필요한 정보를 제공합니다. 이제 자격 증명을 사용하여 대시보드에 로그인하고 대시보드에서 응용 프로그램 섹션을 확장한 다음 클라이언트 자격 증명 섹션을 향해 아래로 스크롤하여 클라이언트 ID 및 클라이언트 암호 세부 정보를 확인합니다.
이미지 PDF를 Python에서 검색 가능한 PDF로
스캔한 PDF 문서에서 OCR 작업을 수행한 다음 검색 가능한 파일로 저장하려면 아래 단계를 따르십시오(pdf 검색 가능하게 만들기). 이러한 단계는 Python을 사용하여 무료 온라인 OCR을 개발하는 데 도움이 됩니다.
- 먼저 클라이언트 ID 클라이언트 암호를 인수로 제공하면서 ApiClient 클래스의 인스턴스를 생성해야 합니다.
- 둘째, ApiClient 개체를 입력 인수로 사용하는 PdfApi 클래스의 인스턴스를 만듭니다.
- 이제 입력 PDF 이름과 OCR 엔진의 언어를 나타내는 선택적 매개변수를 사용하는 PdfApi 클래스의 putsearchabledocument(..) 메서드를 호출합니다.
def ocrPDF():
try:
#Client credentials
client_secret = "406b404b2df649611e508bbcfcd2a77f"
client_id = "88d1cda8-b12c-4a80-b1ad-c85ac483c5c5"
#initialize PdfApi client instance using client credetials
pdf_api_client = asposepdfcloud.api_client.ApiClient(client_secret, client_id)
# PdfApiClient를 인수로 전달하는 동안 PdfApi 인스턴스 생성
pdf_api = PdfApi(pdf_api_client)
#input PDF file name
input_file = 'image-based-pdf-sample.pdf'
# API를 호출하여 OCR 작업을 수행하고 출력을 클라우드 스토리지에 저장
response = pdf_api.put_searchable_document(name=input_file,lang='eng')
# 콘솔에 메시지 출력(선택사항)
print('Image PDF successfully converted to Text PDF !')
except ApiException as e:
print("Exception while calling PdfApi: {0}".format(e))
print("Code:" + str(e.code))
print("Message:" + e.message)
위 이미지에서 왼쪽 부분은 입력된 스캔 PDF 파일을 나타내고 오른쪽 부분은 결과 텍스트 기반 PDF의 미리보기를 보여줍니다. 위 예제에서 사용된 샘플 파일은 image-based-pdf-sample.pdf 및 OCR-Result.pdf에서 다운로드할 수 있습니다.
cURL 명령을 사용한 온라인 OCR
REST API는 cURL 명령을 통해서도 액세스할 수 있으며 Cloud API는 REST 아키텍처를 기반으로 하므로 cURL 명령을 사용하여 PDF OCR을 온라인으로 수행할 수도 있습니다. 그러나 변환 작업을 진행하기 전에 Aspose.Cloud 대시보드를 통해 지정된 개별 클라이언트 자격 증명을 기반으로 JWT(JSON Web Token)를 생성해야 합니다. API는 등록된 사용자만 액세스할 수 있으므로 필수입니다. 다음 명령을 실행하여 JWT 토큰을 생성하십시오.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=88d1cda8-b12c-4a80-b1ad-c85ac483c5c5&client_secret=406b404b2df649611e508bbcfcd2a77f" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
JWT 토큰이 있으면 다음 명령을 실행하여 OCR 작업을 수행하고 출력을 동일한 클라우드 스토리지에 저장하십시오.
curl -v -X PUT "https://api.aspose.cloud/v3.0/pdf/image-based-pdf-sample.pdf/ocr" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>"
결론
이 기사에서는 Python 코드 스니펫을 사용하여 Image PDF에서 Searchable PDF로 변환하는 단계에 대해 설명했습니다. 또한 cURL 명령을 사용하여 OCR 온라인을 수행하는 방법에 대한 세부 정보도 살펴보았습니다. 당사의 클라우드 SDK는 MIT 라이선스에 따라 개발되었으므로 GitHub에서 전체 코드 스니펫을 다운로드하고 요구 사항에 따라 업데이트할 수 있습니다. 현재 Cloud API에서 제공하는 다른 흥미로운 기능에 대해 자세히 알아보려면 개발자 가이드를 살펴보는 것이 좋습니다.
관련 질문이 있거나 API를 사용하는 동안 문제가 발생하는 경우 무료 고객 지원 포럼을 통해 언제든지 문의하십시오.
관련 기사
또한 다음 문서를 통해 자세한 내용을 알아보는 것이 좋습니다.