คุณอาจต้องแยกข้อมูลจากเอกสาร PDF หรือ Word โดยใช้เทมเพลตที่ผู้ใช้กำหนด คุณสามารถแยกวิเคราะห์เอกสารและแยกฟิลด์และข้อมูลตารางโดยทางโปรแกรมบนคลาวด์ บทความนี้จะอธิบายวิธีดึงข้อมูลเฉพาะจากเอกสาร PDF โดยใช้ REST API ใน Python
หัวข้อต่อไปนี้จะครอบคลุมในบทความนี้:
- โปรแกรมแยกวิเคราะห์เอกสาร REST API และ Python SDK
- แยกข้อมูลโดยวัตถุแม่แบบโดยใช้ Python
- แยกข้อมูลตามไฟล์เทมเพลตโดยใช้ Python
โปรแกรมแยกวิเคราะห์เอกสาร REST API และ Python SDK
สำหรับการแยกวิเคราะห์เอกสาร PDF และการแยกข้อมูลตามเทมเพลต ฉันจะใช้ API ของ Python SDK of GroupDocs.Parser Cloud ช่วยให้คุณสามารถแยกวิเคราะห์ข้อมูลจากประเภทเอกสารยอดนิยมทั้งหมด เช่น เอกสาร PDF, เอกสาร Microsoft Office และรูปแบบไฟล์ OpenDocument คุณสามารถแยกข้อความ รูปภาพ และแยกวิเคราะห์ข้อมูลตามเทมเพลตโดยใช้ SDK นอกจากนี้ยังมี .NET, Java, PHP, Ruby และ Node.js SDK เป็น สมาชิกตระกูลโปรแกรมแยกวิเคราะห์เอกสาร สำหรับ Cloud API
คุณสามารถติดตั้ง GroupDocs.Parser Cloud ในโครงการ Python ของคุณด้วย pip (ตัวติดตั้งแพ็คเกจสำหรับ python) โดยใช้คำสั่งต่อไปนี้ในคอนโซลเพื่อแยกข้อมูลจาก pdf:
pip install groupdocs_parser_cloud
โปรดรับรหัสลูกค้าและความลับของลูกค้าจาก แดชบอร์ด และเพิ่มรหัสตามที่แสดงด้านล่าง:
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 = ""
แยกข้อมูลโดยวัตถุแม่แบบโดยใช้ Python
คุณสามารถดึงข้อมูลจากเอกสาร PDF โดยใช้เทมเพลตโดยทำตามขั้นตอนง่าย ๆ ที่กล่าวถึงด้านล่าง:
- อัปโหลด ไฟล์ PDF ไปยังคลาวด์
- การดึงข้อมูลตามเทมเพลตโดยใช้ Python
อัปโหลดเอกสาร
ก่อนอื่น อัปโหลดเอกสาร PDF ไปยังคลาวด์โดยใช้ตัวอย่างโค้ดที่ระบุด้านล่าง:
# สร้างอินสแตนซ์ของ API
file_api = groupdocs_parser_cloud.FileApi.from_config(configuration)
# อัปโหลดไฟล์ตัวอย่าง
request = groupdocs_parser_cloud.UploadFileRequest("companies.pdf", "C:\\Files\\companies.pdf", my_storage)
response = file_api.upload_file(request)
ด้วยเหตุนี้ ไฟล์ PDF ที่อัปโหลดจะอยู่ใน ส่วนไฟล์ ของแดชบอร์ดของคุณบนระบบคลาวด์
การสกัดข้อมูลตามเทมเพลตโดยใช้ Python
โปรดทำตามขั้นตอนด้านล่างเพื่อแยกข้อมูลจากไฟล์ PDF ตามเทมเพลตโดยทางโปรแกรม
- สร้างอินสแตนซ์ของ ParseApi
- กำหนด ParseOptions และกำหนดเส้นทางไปยังไฟล์ PDF
- สร้างเทมเพลตเป็นวัตถุ
- สร้าง ParseRequest
- รับผลลัพธ์โดยเรียกเมธอด ParseApi.parse()
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีแยกข้อมูลตามเทมเพลตที่กำหนดจากเอกสาร PDF โดยใช้ REST API
# การเริ่มต้น API
parseApi = groupdocs_parser_cloud.ParseApi.from_config(configuration)
# กำหนดตัวเลือกการแยกวิเคราะห์
options = groupdocs_parser_cloud.ParseOptions()
options.file_info = groupdocs_parser_cloud.FileInfo()
options.file_info.file_path = "companies.pdf"
# รับวัตถุเทมเพลต
options.template = GetTemplate()
# คำขอแยกวิเคราะห์
request = groupdocs_parser_cloud.ParseRequest(options)
result = parseApi.parse(request)
# แสดงผล
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);
โปรดดูเทมเพลตด้านล่างที่สร้างขึ้นตามเอกสาร 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
แยกข้อมูลตามไฟล์เทมเพลตโดยใช้ Python
คุณยังสามารถแยกข้อมูลจากเอกสาร PDF ได้ด้วยการสร้างไฟล์เทมเพลตที่ใช้ JSON โดยทางโปรแกรม โปรดทำตามขั้นตอนด้านล่างเพื่อแยกวิเคราะห์เอกสารโดยจัดเตรียมไฟล์เทมเพลต
- สร้างอินสแตนซ์ของ ParseApi
- กำหนด ParseOptions
- กำหนดเส้นทางไปยังไฟล์ PDF
- กำหนดเส้นทางไปยังไฟล์เทมเพลต
- สร้าง ParseRequest
- รับผลลัพธ์โดยเรียกเมธอด ParseApi.parse()
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีแยกวิเคราะห์เอกสาร PDF และแยกข้อมูลตามเทมเพลตที่ให้ไว้ในไฟล์ JSON โดยใช้ REST API โปรดทำตามขั้นตอนที่กล่าวถึงก่อนหน้านี้เพื่ออัปโหลดไฟล์
# การเริ่มต้น API
parseApi = groupdocs_parser_cloud.ParseApi.from_config(configuration)
# กำหนดตัวเลือกการแยกวิเคราะห์
options = groupdocs_parser_cloud.ParseOptions()
options.file_info = groupdocs_parser_cloud.FileInfo()
options.file_info.file_path = "companies.pdf"
options.template_path = "template.json"
# คำขอแยกวิเคราะห์
request = groupdocs_parser_cloud.ParseRequest(options)
result = parseApi.parse(request)
# แสดงผล
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);
โปรดดูเทมเพลตด้านล่างในรูปแบบ 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
}
}
}
}
]
}
แยกไฟล์ PDF ออนไลน์
วิธีใช้ pdf extractor ออนไลน์ฟรี โปรดลองใช้เครื่องมือแยกวิเคราะห์ PDF ออนไลน์ฟรีต่อไปนี้และเครื่องมือแยกหน้า PDF ฟรี เครื่องมือแยกไฟล์ PDF ออนไลน์และแยกไฟล์ PDF ออนไลน์ฟรีนี้ได้รับการพัฒนาโดยใช้ API ข้างต้น https://products.groupdocs.app/parser/pdf
บทสรุป
ในบทความนี้ คุณได้เรียนรู้วิธีแยกข้อมูลเฉพาะจากเอกสาร PDF ตามเทมเพลตที่มีให้บนคลาวด์ คุณยังได้เรียนรู้วิธีสร้างวัตถุเทมเพลตและจัดเตรียมเทมเพลตในรูปแบบ JSON บทความนี้ยังอธิบายวิธีอัปโหลดไฟล์ PDF บนคลาวด์โดยทางโปรแกรมสำหรับการดึงข้อมูล PDF ทางออนไลน์ คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับ GroupDocs.Parser Cloud API โดยใช้ เอกสารประกอบ เรายังมีส่วน API Reference ที่ช่วยให้คุณแสดงภาพและโต้ตอบกับ API ของเราได้โดยตรงผ่านเบราว์เซอร์
ถามคำถาม
หากคุณมีข้อสงสัยใดๆ เกี่ยวกับการดึงข้อมูลจาก pdf และการแยกข้อมูล pdf ทางออนไลน์ โปรดอย่าลังเลที่จะถามเราที่ ฟอรัมการสนับสนุนฟรี