import requests
import json
def extract_handwritings(workspace_id, batch_number, app_id, secret_code):
"""Extract handwriting information from documents"""
host = "https://docflow.textin.com"
url = "/api/app-api/sip/platform/v2/file/fetch"
resp = requests.get(
f"{host}{url}",
params={
"workspace_id": workspace_id,
"batch_number": batch_number
},
headers={
"x-ti-app-id": app_id,
"x-ti-secret-code": secret_code
},
timeout=60,
)
if resp.status_code != 200:
print(f"Request failed: {resp.status_code}")
return None
data = resp.json()
for file in data.get("result", {}).get("files", []):
print(f"File name: {file.get('name')}")
# Extract handwriting information
handwritings = file.get("data", {}).get("handwritings", [])
if handwritings:
print(f"\n=== Handwriting Information ===")
print(f"Number of handwriting items: {len(handwritings)}")
for i, handwriting in enumerate(handwritings):
page = handwriting.get("page", 0)
text = handwriting.get("text", "")
positions = handwriting.get("position", [])
print(f"\nHandwriting item {i+1}:")
print(f" Page: Page {page+1}")
print(f" Content: {text}")
# Display position information
for j, pos in enumerate(positions):
pos_page = pos.get("page", 0)
vertices = pos.get("vertices", [])
print(f" Position {j+1} (Page {pos_page+1}): {vertices}")
else:
print("No handwriting information found")
return data
# Usage example
if __name__ == "__main__":
workspace_id = "<your-workspace-id>"
batch_number = "<your-batch-number>"
app_id = "<your-app-id>"
secret_code = "<your-secret-code>"
result = extract_handwritings(workspace_id, batch_number, app_id, secret_code)