python 騰訊API 名片識(shí)別 通用圖片轉(zhuǎn)文字

記錄名片識(shí)別和圖片轉(zhuǎn)文字。
騰訊AI開(kāi)放平臺(tái)提供的名片OCR很強(qiáng)大, 而且可以免費(fèi)使用, 所以本文使用的是騰訊AI開(kāi)放平臺(tái)。
騰訊AI開(kāi)放平臺(tái)API調(diào)用需要注意簽名方法, 請(qǐng)查看之前文章傳送門(mén)

名片OCR API

import logging
logger = logging.getLogger(__name__)
import base64
import time
import requests
import json
def bc_ocr(_path = None, _byte = None):
    ''' 騰訊AI名片識(shí)別
    _path和_byte必須存在一個(gè), 優(yōu)先級(jí) _byte > _path
    :param _path: 
    :param _bytes: 
    :return: 
    '''
    try:
        if _path is None and _byte is None: return
        if _byte is None:
            with open(_path, 'rb') as f:
                _byte = f.read()
        if _byte is None: return
        APP_ID = '你的 App ID'
        API_KEY = '你的 Api Key'
        b_str = base64.b64encode(_byte)
        params = {'app_id': APP_ID, 'time_stamp':int(time.time()), 'nonce_str': 'fa577ce340859f9fe', 'image': b_str}
        sign = get_sign_code(params, API_KEY)
        params['sign'] = sign
        url = 'https://api.ai.qq.com/fcgi-bin/ocr/ocr_bcocr'
        rt = requests.post(url, data=params)
        jsonData = json.loads(rt.text)
        logger.info('騰訊名片OCR結(jié)果:[{}]'.format(jsonData))
        if jsonData.get('ret') == 0:
            return jsonData.get('data')
    except Exception as e:
        logger.error('tencen business_card_ocr error [{}]'.format(e))

通用圖片識(shí)別 API

import logging
logger = logging.getLogger(__name__)
import base64
import time
import requests
import json
def ocr(_path = None, _byte = None):
    '''騰訊 圖片識(shí)別
    _path和_byte必須存在一個(gè), 優(yōu)先級(jí) _byte > _path
    :param _path: 
    :param _byte: 
    :return: 
    '''
    try:
        if _path is None and _byte is None: return
        if _byte is None:
            with open(_path, 'rb') as f:
                _byte = f.read()
        if _byte is None: return
        APP_ID = '你的 App ID'
        API_KEY = '你的 Api Key'
        image_str = base64.b64encode(_byte)
        url = 'https://api.ai.qq.com/fcgi-bin/ocr/ocr_generalocr'
        params = {'app_id': APP_ID, 'time_stamp':int(time.time()), 'nonce_str': 'fa577ce340859f9fe', 'image': image_str}
        sign = get_sign_code(params, API_KEY)
        params['sign'] = sign
        rt = requests.post(url, data=params)
        jsonData = json.loads(rt.text)
        if jsonData.get('ret') == 0:
            item_list = jsonData.get('data').get('item_list')
            return '\r\n'.join([item.get('itemstring') for item in item_list])
    except Exception as e:
        logger.error('tencen ocr error [{}]'.format(e))
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,366評(píng)論 25 708
  • 嘿,你知道昨夜我再一次夢(mèng)到你了。我夢(mèng)到你降落在跑道上,跑道四周都是來(lái)歡迎你的人,而你笑著向我們打著招呼??墒菈?mèng)醒了...
    沙灘上的金毛閱讀 368評(píng)論 0 9
  • Choose the phobia,also known as choose difficult disease....
    _KD閱讀 303評(píng)論 0 0
  • 原創(chuàng)日記(116)2017.06. 12 小雨 日記記錄我生活的婆婆媽媽。 幸福生活黑茶永相伴! 一個(gè)人在無(wú)助的時(shí)...
    黑金公主閱讀 128評(píng)論 0 1

友情鏈接更多精彩內(nèi)容