Ekstrak data dari pdf yang dipindai atau scraping pdf menggunakan pdf page extractor online.

Cara Mengekstrak Data dari PDF menggunakan Python

Anda mungkin perlu mengekstrak data dari dokumen PDF atau Word menggunakan templat yang ditentukan pengguna. Anda dapat mengurai dokumen apa pun dan mengekstrak bidang dan data tabel secara terprogram di cloud. Artikel ini akan menjelaskan cara mengekstrak data tertentu dari dokumen PDF menggunakan REST API dengan Python.

Topik-topik berikut akan dibahas dalam artikel ini:

Document Parser REST API dan Python SDK

Untuk mem-parsing dokumen PDF dan mengekstrak data berdasarkan template, saya akan menggunakan Python SDK of GroupDocs.Parser Cloud API. Ini memungkinkan Anda untuk mengurai data dari semua jenis dokumen populer seperti dokumen PDF, dokumen Microsoft Office, dan format file OpenDocument. Anda dapat mengekstrak teks, gambar, dan mengurai data dengan template menggunakan SDK. Ini juga menyediakan SDK .NET, Java, PHP, Ruby, dan Node.js sebagai anggota keluarga parser dokumen untuk Cloud API.

Anda dapat menginstal GroupDocs.Parser Cloud ke proyek Python Anda dengan pip (penginstal paket untuk python) menggunakan perintah berikut di konsol untuk mengekstrak informasi dari pdf:

pip install groupdocs_parser_cloud

Silakan dapatkan ID Klien dan Rahasia Klien Anda dari dashboard dan tambahkan kode seperti yang ditunjukkan di bawah ini:

client_id = "da0c487d-c1c0-45ae-b7bf-43eaf53c5ad5"
client_secret = "479db2b01dcb93a3d4d20efb16dea971"

configuration = groupdocs_parser_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
my_storage = ""

Ekstrak Data dengan Objek Templat menggunakan Python

Anda dapat mengekstrak data dari dokumen PDF menggunakan templat dengan mengikuti langkah-langkah sederhana yang disebutkan di bawah ini:

Unggah Dokumen

Pertama-tama, unggah dokumen PDF ke Cloud menggunakan contoh kode di bawah ini:

# Buat instance API
file_api = groupdocs_parser_cloud.FileApi.from_config(configuration)

# mengunggah file sampel
request = groupdocs_parser_cloud.UploadFileRequest("companies.pdf", "C:\\Files\\companies.pdf", my_storage)
response = file_api.upload_file(request)

Hasilnya, file PDF yang diunggah akan tersedia di bagian file dasbor Anda di cloud.

Ekstraksi Data berbasis template menggunakan Python

Silakan ikuti langkah-langkah yang disebutkan di bawah ini untuk mengekstrak data dari file PDF berdasarkan template secara terprogram.

  1. Buat instance ParseApi
  2. Tentukan ParseOptions dan Setel jalur ke file PDF
  3. Buat Templat sebagai objek
  4. Buat ParseRequest
  5. Dapatkan hasil dengan memanggil metode ParseApi.parse().

Contoh kode berikut menunjukkan cara mengekstrak data sesuai dengan template yang ditentukan dari dokumen PDF menggunakan REST API.

# inisialisasi api
parseApi = groupdocs_parser_cloud.ParseApi.from_config(configuration)

# menentukan pilihan parse
options = groupdocs_parser_cloud.ParseOptions()
options.file_info = groupdocs_parser_cloud.FileInfo()
options.file_info.file_path = "companies.pdf"

# Dapatkan Objek Templat
options.template = GetTemplate()  

# permintaan parse
request = groupdocs_parser_cloud.ParseRequest(options)
result = parseApi.parse(request)

# Tampilkan Hasil
for data in result.fields_data:
    if data.page_area.page_text_area is not None:
        print("Field name: " + data.name + ". Text :" + data.page_area.page_text_area.text)

    if data.page_area.page_table_area is not None:
        print("Table name: " + data.name)
       for cell in data.page_area.page_table_area.page_table_area_cells:
            print("Table cell. Row " + str(cell.row_index) + " column " + str(cell.column_index) + ". Text: " + cell.page_area.page_text_area.text);

Silakan temukan di bawah templat yang dibuat menurut dokumen PDF.

def GetTemplate():
        field1 = groupdocs_parser_cloud.Field()
        field1.field_name = "Address"
        fieldPosition1 = groupdocs_parser_cloud.FieldPosition()
        fieldPosition1.field_position_type = "Regex"
        fieldPosition1.regex = "Company address:"
        field1.field_position = fieldPosition1

        field2 = groupdocs_parser_cloud.Field()
        field2.field_name = "CompanyAddress"
        fieldPosition2 = groupdocs_parser_cloud.FieldPosition()
        fieldPosition2.field_position_type = "Linked"
        fieldPosition2.linked_field_name = "ADDRESS"
        fieldPosition2.is_right_linked = True
        size2 = groupdocs_parser_cloud.Size()
        size2.width = 100
        size2.height = 10
        fieldPosition2.search_area = size2
        fieldPosition2.auto_scale = True
        field2.field_position = fieldPosition2
        
        field3 = groupdocs_parser_cloud.Field()
        field3.field_name = "Company"
        fieldPosition3 = groupdocs_parser_cloud.FieldPosition()
        fieldPosition3.field_position_type = "Regex"
        fieldPosition3.regex = "Company name:"
        field3.field_position = fieldPosition3
        
        field4 = groupdocs_parser_cloud.Field()
        field4.field_name = "CompanyName"
        fieldPosition4 = groupdocs_parser_cloud.FieldPosition()
        fieldPosition4.field_position_type = "Linked"
        fieldPosition4.linked_field_name = "Company"
        fieldPosition4.is_right_linked = True
        size4 = groupdocs_parser_cloud.Size()
        size4.width = 100
        size4.height = 10
        fieldPosition4.search_area = size4
        fieldPosition4.auto_scale = True
        field4.field_position = fieldPosition4
        
        table = groupdocs_parser_cloud.Table()
        table.table_name = "Companies"
        detectorparams = groupdocs_parser_cloud.DetectorParameters()
        rect = groupdocs_parser_cloud.Rectangle()
        size = groupdocs_parser_cloud.Size()
        size.height = 60
        size.width = 480
        position = groupdocs_parser_cloud.Point()
        position.x = 77
        position.y = 279
        rect.size = size
        rect.position = position
        detectorparams.rectangle = rect
        table.detector_parameters = detectorparams
        
        fields = [field1, field2, field3, field4]
        tables = [table]
        
        template = groupdocs_parser_cloud.Template()
        template.fields = fields
        template.tables = tables
        return template
Mengekstrak Data dengan mem-parsing dokumen menggunakan template

Mengekstrak Data dengan mem-parsing dokumen menggunakan template

Ekstrak Data dengan File Templat menggunakan Python

Anda juga dapat mengekstrak data dari dokumen PDF dengan menyediakan file template berbasis JSON secara terprogram. Silakan ikuti langkah-langkah yang disebutkan di bawah ini untuk mengurai dokumen dengan menyediakan file template.

  1. Buat instance ParseApi
  2. Tentukan ParseOptions
  3. Tetapkan jalur ke file PDF
  4. Tetapkan jalur ke file template
  5. Buat ParseRequest
  6. Dapatkan hasil dengan memanggil metode ParseApi.parse().

Contoh kode berikut menunjukkan cara mengurai dokumen PDF dan mengekstrak data sesuai dengan template yang disediakan dalam file JSON menggunakan REST API. Silakan ikuti langkah-langkah yang disebutkan sebelumnya untuk mengunggah file.

# inisialisasi api
parseApi = groupdocs_parser_cloud.ParseApi.from_config(configuration)

# menentukan pilihan parse
options = groupdocs_parser_cloud.ParseOptions()
options.file_info = groupdocs_parser_cloud.FileInfo()
options.file_info.file_path = "companies.pdf"
options.template_path = "template.json"

# permintaan parse
request = groupdocs_parser_cloud.ParseRequest(options)
result = parseApi.parse(request)

# menunjukkan hasil
for data in result.fields_data:
    if data.page_area.page_text_area is not None:
        print("Field name: " + data.name + ". Text :" + data.page_area.page_text_area.text)

    if data.page_area.page_table_area is not None:
        print("Table name: " + data.name)
       for cell in data.page_area.page_table_area.page_table_area_cells:
            print("Table cell. Row " + str(cell.row_index) + " column " + str(cell.column_index) + ". Text: " + cell.page_area.page_text_area.text);

Silakan temukan di bawah template dalam format JSON.

{
  "Fields": [
    {
      "FieldName": "Address",
      "FieldPosition": {
        "FieldPositionType": "Regex",
        "Regex": "Companyaddress:"
      }
    },
    {
      "FieldName": "CompanyAddress",
      "FieldPosition": {
        "FieldPositionType": "Linked",
        "LinkedFieldName": "ADDRESS",
        "IsRightLinked": true,
        "SearchArea": {
          "Height": 10.0,
          "Width": 100.0
        },
        "AutoScale": true
      }
    },
    {
      "FieldName": "Company",
      "FieldPosition": {
        "FieldPositionType": "Regex",
        "Regex": "Companyname:"
      }
    },
    {
      "FieldName": "CompanyName",
      "FieldPosition": {
        "FieldPositionType": "Linked",
        "LinkedFieldName": "Company",
        "IsRightLinked": true,
        "SearchArea": {
          "Height": 10.0,
          "Width": 100.0
        },
        "AutoScale": true
      }
    }
  ],
  "Tables": [
    {
      "TableName": "Companies",
      "DetectorParameters": {
        "Rectangle": {
          "Position": {
            "X": 77.0,
            "Y": 279.0
          },
          "Size": {
            "Height": 41.0,
            "Width": 480.0
          }
        }
      }
    }
  ]
}

Ekstrak File PDF Online

Bagaimana cara menggunakan pdf extractor online gratis? Silakan coba alat Parsing PDF online gratis berikut dan ekstraktor halaman pdf gratis. Ekstraktor pdf online ini dan alat ekstrak pdf online gratis ini dikembangkan menggunakan API di atas. https://products.groupdocs.app/parser/pdf

Kesimpulan

Pada artikel ini, Anda telah mempelajari cara mengekstrak data tertentu dari dokumen PDF sesuai dengan template yang disediakan di cloud. Anda juga mempelajari cara membuat objek template dan menyediakan template dalam format JSON. Artikel ini juga menjelaskan cara mengunggah file PDF secara terprogram di cloud untuk ekstraksi data pdf online. Anda dapat mempelajari lebih lanjut tentang GroupDocs.Parser Cloud API menggunakan dokumentasi. Kami juga menyediakan bagian Referensi API yang memungkinkan Anda memvisualisasikan dan berinteraksi dengan API kami secara langsung melalui browser.

Berikan pertanyaan

Jika Anda memiliki pertanyaan tentang mengekstraksi data dari pdf dan ekstraksi data pdf online, jangan ragu untuk bertanya kepada kami di Forum Dukungan Gratis

Lihat juga