Python實現(xiàn)圖片識別加翻譯功能
Python使用百度AI接口實現(xiàn)圖片識別加翻譯
python誕生30周年
# encoding:utf-8 import requests import base64 from PIL import Image import pytesseract # 這里需要安裝一下 Tesseract-OCR # 鏈接:https://pan.baidu.com/s/1D2eODet7x9xshBVi6ZUZ_Q # 提取碼:qfef # 安裝好之后別忘了把Tesseract-OCR路徑添加到環(huán)境變量中 import json import requests import keyboard #監(jiān)聽按鍵庫 from PIL import ImageGrab #圖像處理庫 import time from aip import AipOcr #pip install baidu_aip # print("開始截圖") # 1. 截取圖片 keyboard.wait(hotkey='ctrl+alt+a') # print("鍵盤按下了'ctrl+alt+a'") keyboard.wait('enter') # print("鍵盤按下了'enter'") # 模擬延遲,來解決grabclipboard函數(shù)的緩存問題(grabclipboard函數(shù)操作太快,它就會讀取上一次的內(nèi)容) time.sleep(0.1) # 2. 保存圖片到電腦上 image = ImageGrab.grabclipboard() image.save('screen.png') #************************************************************************************* request_url = "https://aip.baidubce.com/rest/2.0/ocr/v1/accurate_basic" # 二進制方式打開圖片文件 f = open('screen.png', 'rb') img = base64.b64encode(f.read()) params = {"image":img} access_token = "你自己的access_token,百度AI里面有教程,我把網(wǎng)址放下面了" # https://ai.baidu.com/ai-doc/OCR/vk3h7y58v request_url = request_url + "?access_token=" + access_token headers = {'content-type': 'application/x-www-form-urlencoded'} response = requests.post(request_url, data=params, headers=headers) print("文字識別:") if response: locList = response.json()['words_result'] for i in locList: print(i['words']) print("\n翻譯:") if response: locList = response.json()['words_result'] for i in locList: text = i['words'] ##================================================================================## # 翻譯函數(shù),word 需要翻譯的內(nèi)容 def translate(word): # 有道詞典 api url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule&smartresult=ugc&sessionFrom=null' # 傳輸?shù)膮?shù),其中 i 為需要翻譯的內(nèi)容 key = { 'type': "AUTO", 'i': word, "doctype": "json", "version": "2.1", "keyfrom": "fanyi.web", "ue": "UTF-8", "action": "FY_BY_CLICKBUTTON", "typoResult": "true" } # key 這個字典為發(fā)送給有道詞典服務器的內(nèi)容 response = requests.post(url, data=key) # 判斷服務器是否相應成功 if response.status_code == 200: # 然后相應的結(jié)果 return response.text else: print("有道詞典調(diào)用失敗") # 失敗就返回空 return None def get_reuslt(repsonse): # 通過 json.loads 把返回的結(jié)果加載成 json 格式 result = json.loads(repsonse) print("%s" % result['translateResult'][0][0]['tgt']) def main(): list_trans = translate(text) get_reuslt(list_trans) if __name__ == '__main__': main()
保存的圖片如下:
打印結(jié)果如下:
總結(jié)
以上所述是小編給大家介紹的Python實現(xiàn)圖片識別加翻譯功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
- Python調(diào)用百度OCR實現(xiàn)圖片文字識別的示例代碼
- python 識別登錄驗證碼圖片功能的實現(xiàn)代碼(完整代碼)
- python圖片驗證碼識別最新模塊muggle_ocr的示例代碼
- 如何利用Python識別圖片中的文字
- Python基于內(nèi)置庫pytesseract實現(xiàn)圖片驗證碼識別功能
- python調(diào)用有道智云API實現(xiàn)文件批量翻譯
- python開發(fā)一款翻譯工具
- python利用google翻譯方法實例(翻譯字幕文件)
- 用Python制作mini翻譯器的實現(xiàn)示例
- python實現(xiàn)在線翻譯
- python 實現(xiàn)批量圖片識別并翻譯
相關(guān)文章
Python轉(zhuǎn)換itertools.chain對象為數(shù)組的方法
這篇文章主要介紹了Python轉(zhuǎn)換itertools.chain對象為數(shù)組的方法,通過代碼給大家介紹了itertools 的 chain() 方法,需要的朋友可以參考下2020-02-02淺析python 內(nèi)置字符串處理函數(shù)的使用方法
這篇文章主要介紹了python 內(nèi)置字符串處理函數(shù)的使用方法,需要的朋友可以參考下2014-06-06Python實現(xiàn)批量合并多個txt文件并生成Excel文件
在數(shù)據(jù)處理中,有時會面臨合并多個文本文件的任務,本文將詳細介紹如何使用Python批量合并多個txt文件,并將其生成為一個Excel文件,需要的可以參考下2023-12-12基于django 的orm中非主鍵自增的實現(xiàn)方式
這篇文章主要介紹了基于django 的orm中非主鍵自增的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05一文教會你用nginx+uwsgi部署自己的django項目
uWSGI是一個Web服務器,它實現(xiàn)了WSGI協(xié)議、uwsgi、http等協(xié)議,下面這篇文章主要給大家介紹了關(guān)于用nginx+uwsgi部署自己的django項目的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下2022-08-08