Soubory PDF jsou široce používány přes internet pro sdílení informací a dat. Jsou poměrně oblíbené, protože zachovávají věrnost dokumentů při prohlížení na jakékoli platformě. Nemáme však kontrolu nad zdrojem a některé soubory jsou sdíleny v naskenovaném formátu. Někdy zachytíte obrázek jako PDF a později potřebujete extrahovat obsah ze souboru. Schůdným řešením je tedy provést operaci OCR a extrahovat text. Pokud však po operaci OCR potřebujete soubor zachovat, je převod do formátu PDF schůdným řešením. V tomto článku budeme diskutovat o krocích, jak převést naskenované PDF na textové PDF pomocí Pythonu.
OCR PDF API
Aspose.PDF Cloud SDK pro Python je obal kolem Aspose.PDF Cloud. Umožňuje vám provádět všechny možnosti zpracování souborů PDF v aplikaci Python. Manipulujte se soubory PDF bez aplikace Adobe Acrobat nebo jiné aplikace. Aby bylo možné sadu SDK používat, je prvním krokem její instalace a je k dispozici ke stažení přes úložiště PIP a GitHub. Nyní spusťte následující příkaz na terminálu/příkazovém řádku a nainstalujte do systému nejnovější verzi SDK.
pip install asposepdfcloud
MS Visual Studio
Můžete také přímo přidat odkaz do svého projektu Python v rámci projektu Visual Studio. Vyhledejte prosím asposepdfcloud jako balíček v okně prostředí Pythonu. Dokončete instalační proces podle kroků očíslovaných na obrázku níže.
Aspose.Cloud Dashboard
Protože naše API jsou přístupná pouze oprávněným osobám, dalším krokem je vytvoření účtu na Aspose.Cloud dashboard. Pokud máte účet GitHub nebo Google, jednoduše se zaregistrujte nebo klikněte na tlačítko Vytvořit nový účet a zadejte požadované informace. Nyní se přihlaste k řídicímu panelu pomocí přihlašovacích údajů a rozbalte sekci Aplikace z řídicího panelu a přejděte dolů k části Pověření klienta, kde najdete podrobnosti o ID klienta a tajném klíči klienta.
Obrázek PDF do PDF s možností vyhledávání v Pythonu
Chcete-li provést operaci OCR na naskenovaném dokumentu PDF, a poté jej uložit jako prohledávatelný (umožnit prohledávatelný soubor PDF), postupujte podle níže uvedených kroků. Tyto kroky nám pomáhají vyvinout bezplatné online OCR pomocí Pythonu.
- Nejprve musíme vytvořit instanci třídy ApiClient a přitom poskytnout ID klienta Client Secret jako argumenty
- Za druhé, vytvořte instanci třídy PdfApi, která vezme objekt ApiClient jako vstupní argument
- Nyní zavolejte metodu putsearchabledocument(..) třídy PdfApi, která přebírá vstupní název PDF a volitelný parametr označující jazyk OCR enginu.
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)
# vytvořit instanci PdfApi a přitom předat PdfApiClient jako argument
pdf_api = PdfApi(pdf_api_client)
#input PDF file name
input_file = 'image-based-pdf-sample.pdf'
# zavolejte rozhraní API, abyste provedli operaci OCR a uložili výstup do cloudového úložiště
response = pdf_api.put_searchable_document(name=input_file,lang='eng')
# tisknout zprávu v konzole (volitelné)
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)
Na obrázku výše levá část označuje vstupní naskenovaný soubor PDF a část na pravé straně zobrazuje náhled výsledného textového PDF. Ukázkové soubory použité ve výše uvedeném příkladu lze stáhnout z image-based-pdf-sample.pdf a OCR-Result.pdf.
OCR online pomocí příkazů cURL
K rozhraním REST API lze přistupovat také prostřednictvím příkazů cURL a protože naše cloudová rozhraní API jsou založena na architektuře REST, můžeme také použít příkaz cURL k provádění PDF OCR online. Než však přistoupíme k operaci převodu, musíme vygenerovat JSON Web Token (JWT) na základě vašich individuálních přihlašovacích údajů klienta zadaných na řídicím panelu Aspose.Cloud. Je to povinné, protože naše API jsou přístupná pouze registrovaným uživatelům. Pro vygenerování tokenu JWT proveďte následující příkaz.
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"
Jakmile budeme mít token JWT, proveďte následující příkaz k provedení operace OCR a uložení výstupu do stejného cloudového úložiště.
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>"
Závěr
V tomto článku jsme diskutovali o krocích pro přechod z obrázku PDF do prohledávatelného PDF pomocí fragmentu kódu Python. Také jsme prozkoumali podrobnosti o tom, jak provádět OCR Online pomocí příkazů cURL. Protože jsou naše cloudové sady SDK vyvíjeny pod licencí MIT, můžete si stáhnout úplný fragment kódu z GitHub a aktualizovat jej podle svých požadavků. Důrazně doporučujeme prozkoumat Průvodce pro vývojáře a dozvědět se více o dalších zajímavých funkcích, které Cloud API aktuálně nabízí.
V případě, že máte nějaké související dotazy nebo narazíte na nějaké problémy při používání našich rozhraní API, neváhejte nás kontaktovat prostřednictvím bezplatného fóra zákaznické podpory.
Související články
Doporučujeme také projít si následující články, kde se o nich dozvíte více