精华内容
下载资源
问答
  • Python提取图片中文字,用到的工具包有PIL,pytesseract,tesseract-ocr 注意: 库的安装相对麻烦一点,一般都是不能直接安装成功的,这里总结了安装过程中的一些坑给大家参考。 (1)首先是PIL库安装,有的电脑...
  • docx_python_process docx文件批量提取图片表格内文字 pip安装: pip install python-docx
  • 本文主要介绍百度和讯飞的OCR调用方法, 结果来看百度的效果要比...将 API Key 和 Secret Key, 已经要提取文字图片传入下面的函数即可获得提取出的文字 import sys import json import base64 from urllib.reques

    本文主要介绍百度和讯飞的OCR调用方法, 从结果来看百度的效果要比讯飞好很多, 不过讯飞给的免费流量比百度多很多.

    一. 百度OCR

    大致流程:

    1. 进入百度智能云官网, 注册并登录
    2. 在产品服务中选择"文字识别"
      在这里插入图片描述
    3. 在"应用列表"中创建应用, 并记录下 API KeySecret Key
      在这里插入图片描述
    4. 将 API Key 和 Secret Key, 已经要提取文字的图片传入下面的函数即可获得提取出的文字
    import sys
    import json
    import base64
    import requests
    from urllib.request import urlopen
    from urllib.request import Request
    from urllib.error import URLError
    from urllib.parse import urlencode
    from urllib.parse import quote_plus
    # 防止https证书校验不正确
    import ssl
    ssl._create_default_https_context = ssl._create_unverified_context
    
    def parse_img(img, API_KEY, SECRET_KEY):
        # 获取链接
        IMAGE_RECOGNIZE_URL = 'https://aip.baidubce.com/rest/2.0/ocr/v1/accurate_basic'
        TOKEN_URL = 'https://aip.baidubce.com/oauth/2.0/token'
        
        params = {'grant_type': 'client_credentials',
                  'client_id': API_KEY,
                  'client_secret': SECRET_KEY}
        post_data = urlencode(params)
        post_data = post_data.encode('utf-8')
        req = Request(TOKEN_URL, post_data)
        try:
            f = urlopen(req, timeout=5)
            result_str = f.read()
        except URLError as err:
            print(err)
        result_str = result_str.decode()
        result = json.loads(result_str)
    
        if ('access_token' in result.keys() and 'scope' in result.keys()):
            if not 'brain_all_scope' in result['scope'].split(' '):
                print('please ensure has check the  ability')
                return
            token = result['access_token']
        # 请求数据
        url = IMAGE_RECOGNIZE_URL + "?access_token=" + token
        try:
            img = base64.b64encode(img)
        except:
            with open(img, 'rb') as f:
                img = f.read()
                img = base64.b64encode(img)
        data = urlencode({
            'image': img,
            'top_num': 1})
        response = requests.post(url, data=data).text
        ret = json.loads(response)['words_result']
        
        return ret
    

    查看效果

    • 测试图片为
      在这里插入图片描述
    • 返回结果为

      "名次"列没有识别出来, 但其它内容都正确识别出来了

    二. 讯飞OCR

    前面几步的操作跟百度OCR差不多, 创建应用之后会得到 API Key 和 APPID, 然后通过下面的代码获取提取结果

    import requests
    import time
    import hashlib
    import base64
    import json
    
    def parse_img(img, API_KEY, APPID):
        # 支持语言类型和是否开启位置定位(默认否)
        param = {"language": "cn|en", "location": "false"}
        param = json.dumps(param)
        paramBase64 = base64.b64encode(param.encode('utf-8'))
    
        m2 = hashlib.md5()
        curTime = str(int(time.time()))
        str1 = API_KEY + curTime + str(paramBase64,'utf-8')
        m2.update(str1.encode('utf-8'))
        checkSum = m2.hexdigest()
    
        # 组装http请求头
        header = {
            'X-CurTime': curTime,
            'X-Param': paramBase64,
            'X-Appid': APPID,
            'X-CheckSum': checkSum,
            'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8',}
        URL = "http://webapi.xfyun.cn/v1/service/v1/ocr/general"
        try:
            img = str(base64.b64encode(img), 'utf-8')
        except:
            with open(img, 'rb') as f:
                img = f.read()
                img = str(base64.b64encode(img), 'utf-8')
        data = {'image': img}
        r = requests.post(URL, data=data, headers=header)
        ret = str(r.content, 'utf-8')
        ret = json.loads(ret)['data']['block'][0]['line']
    
    	return ret
    
    展开全文
  • 1、首先将pdf转换成图片请参考:https://blog.csdn.net/weixin_42397303/article/details/807862322、再提取图片中文字https://blog.csdn.net/weixin_42397303/article/details/80591582

    1、首先将pdf转换成图片

    请参考:https://blog.csdn.net/weixin_42397303/article/details/80786232

    2、再提取图片中的文字

    https://blog.csdn.net/weixin_42397303/article/details/80591582


    展开全文
  • 为了统一回答大家的问题,今天我又使用百度API实现了一个从图片中提取文字和识别身份证的功能,详细描述实现过程,有收获的小伙伴记得收藏、转发分享哦。 百度AI开放平台 百度AI开放平台网址:...

    上次我使用的百度AI开放平台的API接口实现图片的转化,后来有许多小伙伴都私信问我,怎么获取百度AI平台的AK和SK。为了统一回答大家的问题,今天我又使用百度API实现了一个从图片中提取文字和识别身份证的功能,详细描述实现过程,有收获的小伙伴记得收藏、转发分享哦。

    百度AI开放平台

    百度AI开放平台网址:https://login.bce.baidu.com/

    首先我们需要注册一个账号,注册登录之后我们选择文字识别
    在这里插入图片描述

    菜鸟小白的平台因为已经创建了一个应用了,首次登录应该是没有应用的,点击创建应用就好了
    在这里插入图片描述

    后面输入创建的应用名称,从创建页面上看API支持的功能很多,什么文字识别、身份证识别、银行卡识别和驾驶证识别等等,另外如果需要其他类型的功能(如图片效果增强等)也可以直接勾选上。
    在这里插入图片描述

    下面我们不需要选择文字识别包名,填写一个应用描述点击创建就OK了。
    在这里插入图片描述

    创建完成之后我们就可以看到我们需要的AK(API Key)和SK(Secret Key)了。
    在这里插入图片描述

    思路分析

    可以看到百度AI开放平台是有提供API文档和举例代码的。写程序之前需要先看看我们的要使用的接口是什么格式,是否需要身份认证。百度AI开放就是需要使用AK和SK去和平台做一个鉴权操作,获取一个access token,然后我们再拿着这个access token去请求接口,完成我们今天需要完成的文字识别和身份证识别功能。

    鉴权函数

    从分析来看,我们首先需要去获取一个access token,用于后续的请求合法性鉴别。查看平台的接口文档​,我们的编码如下​,这个其实在我们之前的图片处理程序中也是一样的​。
    ​文档地址:https://ai.baidu.com/ai-doc/REFERENCE/Ck3dwjhhu

    百度AI开放平台鉴权函数

    def get_access_token():
        url = 'https://aip.baidubce.com/oauth/2.0/token'
        data = {
            'grant_type': 'client_credentials',  # 固定值
            'client_id': 'eFGwDIb*******HucbnPr',  # 在开放平台注册后所建应用的API Key
            'client_secret': 'XPxWT2L********PFVCKS6PVih'  # 所建应用的Secret Key
        }
        res = requests.post(url, data=data)
        res = res.json()
        print(res)
        access_token = res['access_token']
        return access_token
    

    文字识别函数

    ​鉴权函数写好之后,我们就可以拿着获取到的access token去向平台接口发起请求,识别图片中的文字了​。从平台文档上看通用文字识别的url为
    https://aip.baidubce.com/rest/2.0/ocr/v1/accurate_basic
    平台的​API文档地址:https://cloud.baidu.com/doc/OCR/s/1k3h7y3db​

    #通用文字识别
    def general_word():
        #通用文字识别接口url
        general_word_url = "https://aip.baidubce.com/rest/2.0/ocr/v1/accurate_basic"
        #获取执行路径
        # path = os.getcwd()
        # 二进制方式打开图片文件
        f = open('5.jpg', 'rb')
        img = base64.b64encode(f.read())
        print(img)
        params = {"image":img,
                  "language_type":"CHN_ENG"}
        access_token = get_access_token()
        request_url = general_word_url + "?access_token=" + access_token
        print(request_url)
        headers = {'content-type': 'application/x-www-form-urlencoded'}
        response = requests.post(request_url, data=params, headers=headers)
        # print(response)
        # res = response.json()
        if response:
            res = response.json()["words_result"]
            print(res)
            file_name = "菜鸟小白.txt"
            with open(file_name, 'w', encoding='utf-8') as f:
                for j in res:
                    print(j["words"])
                    f.write(j["words"]+"\n")
    

    当我们判断返回值存在内容时,​我们将json格式的返回值,写入“菜鸟小白.txt”文档中​。

    身份证识别函数

    ​我们写完了文字识别之后,其实写身份证识别和其它证件的识别就都是一样的方式了调用了​。

    #身份证识别
    def idcard():
        idcard_url = "https://aip.baidubce.com/rest/2.0/ocr/v1/idcard"
        # 二进制方式打开图片文件
        f = open('4.jpg', 'rb')
        img = base64.b64encode(f.read())
    ​
        params = {"id_card_side":"front","image":img}
        access_token = get_access_token()
        request_url = idcard_url + "?access_token=" + access_token
        print(request_url)
        headers = {'content-type': 'application/x-www-form-urlencoded'}
        response = requests.post(request_url, data=params, headers=headers)
        if response:
            res = response.json()["words_result"]
            file_name = "菜鸟小白的学习分享.txt"
            with open(file_name, 'w', encoding='utf-8') as f:
                f.write("住址:"+res["住址"]["words"]+"\n")
                f.write("出生日期:" + res["出生"]["words"] + "\n")
                f.write("姓名:" + res["姓名"]["words"] + "\n")
                f.write("公民身份号码:" + res["公民身份号码"]["words"] + "\n")
                f.write("性别:" + res["性别"]["words"] + "\n")
                f.write("民族:" + res["民族"]["words"] + "\n")
    

    主函数

    最后我们写一个主函数调用不同的功能函数就好了​。

    if __name__ == '__main__':
        idcard()
        general_word()
    

    实现效果

    ​这样我们的目标就完成了,我们来看看实现效果吧​。首先我们看看文字识别的效果​。
    

    原始图片​:
    在这里插入图片描述
    最终识别出来的效果
    在这里插入图片描述

    最终我们的识别仅将“API”识别为“AP”,少了一个字符“I”,正确率高达99%以上​,一个字——强​。

    我们再来看看身份证的识别效果,原始图片如下(网络百度图片,如有侵权请联系作者删除):
    在这里插入图片描述
    ​经过我们的程序识别后,所有信息都正确识别出来了(其中身份证号码应该是因为假身份证号码识别规则不通过所有为空白了,菜鸟小白自己的身份证是完成识别出来的),正确率高达100%。
    在这里插入图片描述

    源码获取

    老规矩,还是公众号回复“文字识别”即可获取源码。

    粉丝福利

    关注公众号“菜鸟小白的学习分享”,回复“粉丝福利”就可以参与抽奖,赢得腾讯视频会员月卡一张哦~

    好了,今天分享结束了。如果你也认同菜鸟小白的学习分享的话,那就给菜鸟小白一个关注、在看、点赞+赞赏吧,你们的支持,是我持续不断的动力。非常感谢大家的支持,我们明天再会~

    推荐阅读:

    通过server酱实现定时推送天气情况,再不用担心你的糊涂蛋女友忘带伞了~~

    想做一个天气推送程序,却被和风天气API的示例代码调试得快吐了

    教你搭建微信公众号自动答复机器人

    媳妇儿让我给她找一个PDF转word免费工具,找了半天我决定给她写一个出来-

    媳妇儿喜欢玩某音中的动漫特效,那我就用python做一个图片转化软件。

    python使用cx_Oracle库连接oracle服务器

    关注微信公众号——菜鸟小白的学习分享
    妈妈再也不用担心我找不到路了
    在这里插入图片描述

    一个人的学习——孤单
    一群人的学习——幸福

    展开全文
  • PDF转Word,以及提取Word中图片里的文字 PS: 也是网上各个帖子学习的Python,因此代码的格式以及内容有粘贴网上其他大神的代码,如有侵权请告知删除 软件截图: #!/usr/bin/python # -*- coding: gbk -*- ...

    PDF转Word,以及提取Word中图片里的文字

    PS: 也是从网上各个帖子中学习的Python,因此代码的格式以及内容有粘贴网上其他大神的代码,如有侵权请告知删除

    软件截图:
    在这里插入图片描述

    #!/usr/bin/python
    # -*- coding: gbk -*-
    
    import six
    from pdf2docx import Converter
    import zipfile  # 压缩包
    import os  # 文件库
    import pytesseract
    from tkinter import *
    import tkinter.filedialog
    from PIL import Image
    import shutil
    
    root = Tk()
    root.title('PDF转换WORD,TXT')
    root.geometry('580x300')
    
    PDF_FilePath = ''#用来保存PDF文件路径
    DOCX_FilePath = ''#用来保存Word文件路径
    TEXT_FilePth = ''#用来保存Text文件路径
    Image_BaseForder = 'C:\\Temp'#临时用来存放WORD中的图片,方便后续分析识别图片中的文字
    
    def Button1Anwser():
        global PDF_FilePath
        Path = Label(root, text='')
        PDF_FilePath = tkinter.filedialog.askopenfilename()
        Path.config(text = PDF_FilePath)
        Path.grid(row=2, column=0, sticky=W)
    
    def Button4Anwser():
        global DOCX_FilePath
        Path = Label(root, text='')
        DOCX_FilePath = tkinter.filedialog.askopenfilename()
        Path.config(text = DOCX_FilePath)
        Path.grid(row=6, column=0, sticky=W)
    
    def Button2Anwser():
        global PDF_FilePath
        global DOCX_FilePath
    
        if(PDF_FilePath == ""):
            Text = Label(root, text='')
            Text.config(text='请先选择PDF文件')
            Text.grid(row=3, column=1)
    
        DOCX_FilePath = PDF_FilePath.split('.')[0] + '.docx'
        Text = Label(root, text='')
        Text.config(text='开始转换')
        Text.grid(row=3, column=1)
    
        cv = Converter(PDF_FilePath)
        cv.convert(DOCX_FilePath, start=0, end=None)
        cv.close()
    
        Text = Label(root, text='')
        Text.config(text='转换完成')
        Text.grid(row=3, column=1)
    
        Path = Label(root, text='')
        Path.config(text=DOCX_FilePath)
        Path.grid(row=4, column=0, sticky=W)
    
    def Button3Anwser():
        global DOCX_FilePath
        global TEXT_FilePth
        global Image_BaseForder
    
        if(PDF_FilePath == ""):
            Text = Label(root, text='')
            Text.config(text='请先选择PDF文件')
            Text.grid(row=7, column=1)
    
        TEXT_FilePth = PDF_FilePath.split('.')[0] + '.txt'
        Text = Label(root, text='')
        Text.config(text='开始转换')
        Text.grid(row=7, column=1)
    
        ToText(DOCX_FilePath)
    
        Text = Label(root, text='')
        Text.config(text='转换完成')
        Text.grid(row=7, column=1)
    
        Path = Label(root, text='')
        Path.config(text=TEXT_FilePth)
        Path.grid(row=8, column=0, sticky=W)
    
        shutil.rmtree(Image_BaseForder)
    class Get_WordContent:
        def __init__(self, Word_Path):
            self.Word_Path = Word_Path
    
        # 将Word文档中的图片提取出来,存放到文件夹
        def Get_Image(self):
            global TEXT_FilePth
            Word_Path = self.Word_Path
            try:
                TEXT_FilePth = PDF_FilePath.split('.')[0] + '.txt'
                Doc = zipfile.ZipFile(Word_Path)
                #存放的文件夹名称要按照文档名称进行区分
                Image_Forder = Image_BaseForder + "\\" + PDF_FilePath.split("/")[-1].split('.')[0]
    
                if(os.path.exists(Image_Forder) == 0):
                    os.makedirs(Image_Forder)
    
                #进行图片的保存
                for Info in Doc.infolist():
                    if Info.filename.endswith((".jpg", '.jpeg', '.png', '.gif', 'bmp')):
                        Doc.extract(Info.filename, Image_Forder)
            except Exception as e:
                print(e)
            finally:
                pass
    
        def Get_Words(self):
            global TEXT_FilePth
            try:
                fd = open(TEXT_FilePth, 'w')
                Image_Forder = Image_BaseForder + "\\" + DOCX_FilePath.split("/")[-1].split('.')[0] + "\\word\\media"  # 图片路径
                if os.path.exists(Image_Forder) != 0:
                    for filename in os.listdir(Image_Forder):
                        words = ""
                        #获取每一张图片的文本信息
                        words = str(
                            pytesseract.image_to_string(Image.open(Image_Forder + "\\" + filename), lang="chi_sim"))
                        fd.write(words)
                fd.close()
            except Exception as e:
                print(e)
            finally:
                pass
    
    def ToText(WordPath):
        WordContent = Get_WordContent(WordPath)
        WordContent.Get_Image()
        WordContent.Get_Words()
    # -------------------------------------界面---------------------------------
    SelectFile = Button(root, text="待转换PDF", command=Button1Anwser,width=15, height=1, bg="DarkGray", fg="white")
    SelectFile.grid(row=1, column=0, sticky=W)
    
    SelectFile = Button(root, text="转Word", command=Button2Anwser, width=15, height=1, bg="DarkGray", fg="white")
    SelectFile.grid(row=3, sticky=W)
    
    SelectFile = Button(root, text="待提取文字Word", command=Button4Anwser,width=15, height=1, bg="DarkGray", fg="white")
    SelectFile.grid(row=5, column=0, sticky=W)
    
    SelectFile = Button(root, text="转Text", command=Button3Anwser, width=15, height=1, bg="DarkGray", fg="white")
    SelectFile.grid(row=7, sticky=W)
    
    Advice1 = Label(root, text='')
    Advice1.config(text='1 : PDF转WORD后,发现Word中的文字是以图片显示的情况下,进一步进行Word中针对图片的文字识别')
    Advice1.grid(row=9, column=0, sticky=W)
    
    Advice2 = Label(root, text='')
    Advice2.config(text='2 : 文字识别比不上网上需花钱的识别,会出现漏字,错字等情况,请提取后仔细检查')
    Advice2.grid(row=10, column=0, sticky=W)
    
    Advice3 = Label(root, text='')
    Advice3.config(text='3 : 转换过程可能很长,转换按钮一直处于按下状态,请等待“转换完成”字样提示')
    Advice3.grid(row=11, column=0, sticky=W)
    
    root.mainloop()
    
    展开全文
  • 像素中提取特征用于机器学习,如Glyce 其他的各种脑洞,比如计算字符所占像素数/长/宽之类的 其实现的思路不是那么直截了当,但是想通了就不困难了,就是在画布上画一个字。说到画图,肯定要想到python中的PIL/...
  • 前言 本文的文字图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系...假设我们需要各种网页中提取全文,并且要剥离所有HTML标记。通常,默认解决方案是使用BeautifulSoup软件包中的get_t
  • 它可以直接使用,或者使用API图像中提取打印的文本,支持多种语言。该软件包包含一个ORC引擎【libtesseract】和一个命令行程序【tesseract】。Tesseract4添加了一个新的基于LSTM的OCR引擎,该引擎专注于行识别,但...
  • 今天我们再次回到PDF,详细讲解如何使用python从PDF提取指定的信息。我们将以一份年度报告PDF为例进行介绍,内含大量文字、表格、图片,具体如下 模块安装 首先需要安装两个模块,第一个是pdfplumber,在命令行...
  • 本文的文字图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 本文章来自腾讯云 作者:Python进阶者 想要学习Python?有问题得不到第一时间解决?来看看...
  • ## 题目描述 想以下文字中抽出不重复的字符,然后排序展示。 But soft what light through yonder window breaks ...1.文件中提取出来的是4个列表,无法将4个列表合并成一个字符库 2.不知道怎么给word赋值
  • 方法1: 点击选择图片,然后选中图片就会自动识别图片提取文字(gif格式的不可以提取文字) 方法2: 手动粘贴路径到最上面的单行输入框,再点击开始识别 方法3: 先用其他截图软件(比如QQ截图),截图之后会自动存到剪切板...
  • 它可以直接使用,或者使用API图像中提取打印的文本,支持多种语言。该软件包包含一个ORC引擎【libtesseract】和一个命令行程序【tesseract】。Tesseract4添加了一个新的基于LSTM的OCR引擎,该引擎专注于行识别,但...
  • 在之前的自动化系列文章中,我们分别讲过如何使用Python将Word中表格信息批量提取至Excel和多个Excel表格汇总至Word,今天继续讲解如何将文字从PPT中提取出来并写入Word,主要将涉及如何使用python-pptx和python-...
  • 在之前的文章中我们讲解了如何从Word表格中提取指定数据并按照格式保存到Excel中,今天我们将再次以一位读者提出的真实需求来讲解如何使用Python从Excel中计算、整理数据并写入Word中,其实并不难,主要就是以下两步...
  • python抓取页面文本及图片超链接

    千次阅读 2020-03-15 18:36:11
    自定义标题目标网页[baidu]:一、爬取网页全部标签网址:1、按F12进入开发者模式查看...这里用到第三方库:Beautiful Soup(一个可以HTML或XML文件中提取数据的Python库) 目标网页[baidu]: 一、爬取网页全部标...
  • 图片对象使用光学字符识别技术(pytesseract库)从图片中提取文字 PyTesseract缺点:只能识别出一些清晰工整的图像中的文字,扭曲的文字或者有其它颜色图片干扰信息时候识别不准确 参考案例001(02文件夹中) 4.2 CSS...
  • python 实现OCR识别

    千次阅读 2020-06-24 10:25:22
    最近公司需要对一批图片进行文字识别,为了方便找到了python的第三方库cnocr来实现 cnocr 简介 一个面向中国ocr的python包,提供了经过训练的模型。 所以安装后可以直接使用。 当前crnn模型的精度约为98.8%。 用法 ...
  • 源图中提取文字图像信息,记录这个文字图像信息像素点在图像矩阵中的位置 对载体图片进行预处理,将B通道的像素值全部设置成偶数 把载体图片中,把第一步已经记录的位置的像素B通道设置为奇数 信息解码的过程就是...
  • 本文的文字图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系...Beautiful Soup 是一个可以HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档
  • python3.x Opencv Toturial

    2018-03-01 12:59:34
    5.2 文件播放视频 5.3 保存视频 6 OpenCV 的绘图函数 6.1 画线 6.2 画矩形 6.3 画圆 6.4 画椭圆 6.5 画多边形 6.6 在图片上添加文字 7 把鼠标当画笔 7.1 简单演示 7.2 高级一点的示例 8 用滑动条做...
  • 本文的文字图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。 PS:如有需要Python学习资料的小伙伴可以点击下方链接自行获取 python免费学习资料、代码以及交流解答点击...
  • 先看一下最终的效果: 主要分为以下步骤: 1.新浪微博爬取高清图片 2.对图片进行文字识别,提取图片中的信息 3.利用matplotlib绘制动态条形图
  • 本文的文字图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于腾讯云 作者:昱良 在本文,我们将介绍一些用于数据科学方面的Python库,...
  • 本文的文字图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。 作者:CDA数据分析师 PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取 ...
  • 本文的文字图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。 PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取 python免费学习资料、代码以及交流解答...
  • 本文的文字图片来源于网络,仅供学习、交流使用,不具有任何商业用途,,...本文将讲解如何将文字从PPT中提取出来并写入Word,主要将涉及如何使用python-pptx和python-docx交互操作word和ppt文件! 本文依旧来源于真实..

空空如也

空空如也

1 2
收藏数 40
精华内容 16
关键字:

python从图片中提取文字

python 订阅