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)