我已经使用生成文档分析结果,
with open(pdf_path, "rb") as f:
poller = document_intelligence_client_sections.begin_analyze_document(
"prebuilt-layout", f.read(), content_type="application/pdf",
output_content_format=ContentFormat.MARKDOWN, )
result = poller.result()
type(section_layout)
>> azure.ai.documentintelligence.models._models.AnalyzeResult # Want in this format!
我已经使用 ...as_dict() 保存了结果,如下,
with open("data/section_layouts/result.json", "w") as f:
json.dump(section_layout.as_dict(), f)
现在,当我使用以下方式加载 json 时,
with open("result.json", "r") as f:
data = json.load(f)
我按预期获取了字典中的数据。但是,我想以 AnalyzeResult 类格式获取数据。有人可以帮忙吗?谢谢。
我按预期获取了字典中的数据。但是,我想以 AnalyzeResult 类格式获取数据。有人可以帮忙吗?谢谢。
您可以使用以下代码获取
AnalyzeResult
类格式的数据。
代码:
import json
from azure.ai.formrecognizer import DocumentAnalysisClient
from azure.core.credentials import AzureKeyCredential
from azure.ai.formrecognizer import AnalyzeResult
endpoint = "https://xxxx.cognitiveservices.azure.com/"
api_key = "xxxxx"
document_intelligence_client_sections = DocumentAnalysisClient(endpoint, AzureKeyCredential(api_key))
pdf_path = r"C:\Users\xxx\demo.pdf"
with open(pdf_path, "rb") as f:
poller = document_intelligence_client_sections.begin_analyze_document(
model_id="prebuilt-layout", document=f.read(),
)
section_layout = poller.result()
with open("result.json", "w") as f:
json.dump(section_layout.to_dict(), f) # Use to_dict() to save as JSON
with open("result.json", "r") as f:
data = json.load(f)
# Convert the dictionary back to an AnalyzeResult object
analyze_result = AnalyzeResult.from_dict(data)
# Now you can work with the AnalyzeResult object
print(type(analyze_result))
上面的代码使用
to_dict()
方法将 AnalyzeResult
对象保存为 JSON 文件,然后使用 from_dict()
方法将 JSON 数据转换回 AnalyzeResult
对象。
输出:
<class 'azure.ai.formrecognizer._models.AnalyzeResult'>