Python编程:通过百度文字识别提取表格数据

简介: Python编程:通过百度文字识别提取表格数据

百度文字识别文档:

https://ai.baidu.com/docs#/OCR-Python-SDK/top

安装sdk

pip install baidu-aip
• 1

先创建应用,得到appid

要识别的表格图片:

image.png

代码示例

from aip import AipOcr
""" 你的 APPID AK SK """
APP_ID = '你的 App ID'
API_KEY = '你的 Api Key'
SECRET_KEY = '你的 Secret Key'
client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
with open("names.png", "rb") as f:
    image = f.read()
result = client.basicGeneral(image)
print(result)

识别结果:

{
    "log_id":3213553909522465362,
    "words_result_num":20,
    "words_result":[
        {
            "words":"表格1:"
        },
        {
            "words":"姓名"
        },
        {
            "words":"年龄"
        },
        {
            "words":"性别"
        },
        {
            "words":"李雷"
        },
        {
            "words":"20男"
        },
        {
            "words":"韩梅梅"
        },
        {
            "words":"23女"
        },
        {
            "words":"赵小三"
        },
        {
            "words":"25女"
        },
        {
            "words":"Table2."
        },
        {
            "words":"Name"
        },
        {
            "words":"ge"
        },
        {
            "words":"Gender"
        },
        {
            "words":"Tom"
        },
        {
            "words":"30 Male"
        },
        {
            "words":"Jack"
        },
        {
            "words":"33 Male"
        },
        {
            "words":"one"
        },
        {
            "words":"31Female"
        }
    ]
}

结果不太满意,年龄和性别被合在一起了

相关文章
鸿蒙5开发宝藏案例分享---一多分级导航栏开发实践
本文分享鸿蒙开发中多端分级导航栏的实用经验,解决手机、平板和PC端适配难题。通过断点与动态布局,实现手机底部TabBar+顶部二级导航,PC端左侧侧边栏+顶部页签的设计。提供移动端和PC端详细编码教学,包含避坑指南和设计技巧。最后解答高频问题,助你轻松掌握鸿蒙布局能力,期待一起探索更多黑科技!
|
10月前
|
人工智能 自然语言处理 Serverless
AI 大模型+智能客服:自动识别客户意图,实现高效沟通
AI 大模型+智能客服:自动识别客户意图,实现高效沟通
|
存储 前端开发 JavaScript
通过dem2terrain生成MapboxGL地形服务
通过dem2terrain生成MapboxGL地形服务
403 8
|
机器学习/深度学习 人工智能 安全
智能时代的隐私守护者:AI加密技术的崛起与挑战###
本文深入探讨了人工智能(AI)在数据加密领域的创新应用,分析了AI如何增强数据安全性,同时也指出了面临的挑战和未来发展趋势。通过具体案例分析,展现了AI加密技术在保护个人隐私与促进数据安全方面的潜力,为读者提供对未来智能时代隐私保护的深刻洞见。 ###
|
Kubernetes 调度 容器
在K8S中,如何把某个worker节点设置为不可调度?
在K8S中,如何把某个worker节点设置为不可调度?
Gitlab一分支的指定提交合并到main
Gitlab一分支的指定提交合并到main
972 0
|
安全 开发者
《源于支付宝的人脸认证:速度快、体验好、通过率高》
《源于支付宝的人脸认证:速度快、体验好、通过率高》
649 1
|
JavaScript 前端开发 程序员
通过一篇文章带你解决如何加密代码任然可以运行
在实际生活中,作为程序员偶尔会因为资金不够用了选择去兼职写代码,当我们写完一个代码,将他发给某个公司的时候,我们经常会想到如何让目标公司看不见你写的源代码(源代码是你好不容易想出来的,难免不有些心疼嘛),但目标公司却可以运行他所需要的代码,下面我将讲解一种静态库的使用方法,来实现这个方法。
734 0
|
Web App开发 缓存 应用服务中间件
java.lang.IllegalStateException: Cannot call sendError() after the response has been committe【SSH】
java.lang.IllegalStateException: Cannot call sendError() after the response has been committe【SSH】
1182 0
java.lang.IllegalStateException: Cannot call sendError() after the response has been committe【SSH】

热门文章

最新文章