<tfoot id='s3dfk'></tfoot>

      <i id='s3dfk'><tr id='s3dfk'><dt id='s3dfk'><q id='s3dfk'><span id='s3dfk'><b id='s3dfk'><form id='s3dfk'><ins id='s3dfk'></ins><ul id='s3dfk'></ul><sub id='s3dfk'></sub></form><legend id='s3dfk'></legend><bdo id='s3dfk'><pre id='s3dfk'><center id='s3dfk'></center></pre></bdo></b><th id='s3dfk'></th></span></q></dt></tr></i><div id='s3dfk'><tfoot id='s3dfk'></tfoot><dl id='s3dfk'><fieldset id='s3dfk'></fieldset></dl></div>

    1. <small id='s3dfk'></small><noframes id='s3dfk'>

        <bdo id='s3dfk'></bdo><ul id='s3dfk'></ul>
        <legend id='s3dfk'><style id='s3dfk'><dir id='s3dfk'><q id='s3dfk'></q></dir></style></legend>
      1. python 3调用百度OCR API实现剪贴板文字识别

        时间:2023-12-16
          <i id='u6sIy'><tr id='u6sIy'><dt id='u6sIy'><q id='u6sIy'><span id='u6sIy'><b id='u6sIy'><form id='u6sIy'><ins id='u6sIy'></ins><ul id='u6sIy'></ul><sub id='u6sIy'></sub></form><legend id='u6sIy'></legend><bdo id='u6sIy'><pre id='u6sIy'><center id='u6sIy'></center></pre></bdo></b><th id='u6sIy'></th></span></q></dt></tr></i><div id='u6sIy'><tfoot id='u6sIy'></tfoot><dl id='u6sIy'><fieldset id='u6sIy'></fieldset></dl></div>

            • <bdo id='u6sIy'></bdo><ul id='u6sIy'></ul>

                <tbody id='u6sIy'></tbody>
                <tfoot id='u6sIy'></tfoot>

                1. <legend id='u6sIy'><style id='u6sIy'><dir id='u6sIy'><q id='u6sIy'></q></dir></style></legend>

                2. <small id='u6sIy'></small><noframes id='u6sIy'>

                  Python 3调用百度OCR API实现剪贴板文字识别

                  本文介绍如何使用Python 3调用百度OCR API实现剪贴板文字识别,同时提供了2个示例来展示如何调用OCR API以及如何通过Python将识别结果保存到文本文件。

                  前置条件

                  在使用本文提供的代码之前,您需要先完成以下事项:

                  • 注册百度OCR API并获取相应的API Key和Secret Key
                  • 安装Python 3.x环境以及相应的依赖库(如requests, Pillow等)

                  OCR API简介

                  百度OCR API是一款文本识别服务,可以识别图片中的文字。其使用过程如下:

                  • 将待识别的图片文件通过请求发送到百度服务器
                  • 百度服务器返回识别结果

                  调用OCR API

                  下面我们介绍如何通过Python 3调用OCR API。

                  import requests
                  from PIL import Image
                  from io import BytesIO
                  
                  appkey = 'your appkey'
                  secretkey = 'your secretkey'
                  api_endpoint = 'https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic'
                  
                  def ocr(file_path):
                      '''
                      使用OCR API识别图片中的文字
                      :param file_path: 图片文件路径
                      :return: 识别结果(str)
                      '''
                      with open(file_path, 'rb') as fp:
                          img = Image.open(fp)
                          # 将图片转换为RGB格式
                          img = img.convert('RGB')
                          # 将图片转换为Bytes数据
                          output_buffer = BytesIO()
                          img.save(output_buffer, format='JPEG')
                          binary_data = output_buffer.getvalue()
                  
                      # 设置请求头
                      headers = {
                          'Content-Type': 'application/x-www-form-urlencoded'
                      }
                  
                      # 设置请求参数
                      data = {
                          'image': binary_data,
                          'access_token': access_token
                      }
                  
                      response = requests.post(api_endpoint, headers=headers, data=data)
                      if response.status_code == 200:
                          result = response.json()
                          if 'words_result' in result and len(result['words_result']) > 0:
                              return '\n'.join([r['words'] for r in result['words_result']])
                      return ''
                  

                  上述代码首先将图片文件转换为Bytes数据,然后将其通过POST请求发送到OCR API接口,接口返回的结果为JSON格式字符串,其中包含了识别结果。

                  示例1:从剪贴板中读取图片并识别

                  下面提供一个示例,展示如何从剪贴板中读取图片并进行文字识别。需要先安装pyperclip库。

                  import pyperclip
                  from PIL import ImageGrab
                  import os
                  
                  file_name = 'temp.jpg'
                  clipboard_image = ImageGrab.grabclipboard()
                  
                  if clipboard_image:
                      clipboard_image.save(file_name, 'JPEG')
                      result = ocr(file_name)
                      os.remove(file_name)
                      if result:
                          pyperclip.copy(result)
                          print('识别结果已复制到粘贴板:\n{}'.format(result))
                  

                  上述代码首先使用ImageGrab.grabclipboard()从剪贴板中获取图片,然后调用ocr函数进行识别。最后,将识别结果复制到粘贴板中,并输出识别结果。

                  示例2:批量识别图片并保存到文本文件

                  下面提供一个示例,展示如何批量识别图片,并将识别结果保存到文本文件中。

                  import os
                  
                  input_dir = 'input'
                  output_dir = 'output'
                  
                  if not os.path.exists(output_dir):
                      os.mkdir(output_dir)
                  
                  for file_name in os.listdir(input_dir):
                      if file_name.endswith('.jpg') or file_name.endswith('.png'):
                          input_file_path = os.path.join(input_dir, file_name)
                          output_file_path = os.path.join(output_dir, file_name + '.txt')
                          result = ocr(input_file_path)
                          with open(output_file_path, 'w', encoding='utf-8') as fp:
                              fp.write(result)
                              print('{} 识别成功'.format(file_name))
                  

                  上述代码首先读取指定目录下的所有图片文件,然后依次进行识别,并将识别结果保存到文本文件中。

                  总结

                  本文介绍了如何使用Python 3调用百度OCR API进行文字识别,并提供了两个示例来展示如何调用OCR API以及如何通过Python将识别结果保存到文本文件。

                  上一篇:Python中Threading用法详解 下一篇:用python登录带弱图片验证码的网站

                  相关文章

                  <legend id='AXWNF'><style id='AXWNF'><dir id='AXWNF'><q id='AXWNF'></q></dir></style></legend>
                    <tfoot id='AXWNF'></tfoot>
                  1. <i id='AXWNF'><tr id='AXWNF'><dt id='AXWNF'><q id='AXWNF'><span id='AXWNF'><b id='AXWNF'><form id='AXWNF'><ins id='AXWNF'></ins><ul id='AXWNF'></ul><sub id='AXWNF'></sub></form><legend id='AXWNF'></legend><bdo id='AXWNF'><pre id='AXWNF'><center id='AXWNF'></center></pre></bdo></b><th id='AXWNF'></th></span></q></dt></tr></i><div id='AXWNF'><tfoot id='AXWNF'></tfoot><dl id='AXWNF'><fieldset id='AXWNF'></fieldset></dl></div>

                      • <bdo id='AXWNF'></bdo><ul id='AXWNF'></ul>

                      <small id='AXWNF'></small><noframes id='AXWNF'>