Python實(shí)現(xiàn)圖片識(shí)別加翻譯功能
Python使用百度AI接口實(shí)現(xiàn)圖片識(shí)別加翻譯
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)聽(tīng)按鍵庫(kù)
from PIL import ImageGrab #圖像處理庫(kù)
import time
from aip import AipOcr #pip install baidu_aip
# print("開(kāi)始截圖")
# 1. 截取圖片
keyboard.wait(hotkey='ctrl+alt+a')
# print("鍵盤(pán)按下了'ctrl+alt+a'")
keyboard.wait('enter')
# print("鍵盤(pán)按下了'enter'")
# 模擬延遲,來(lái)解決grabclipboard函數(shù)的緩存問(wèn)題(grabclipboard函數(shù)操作太快,它就會(huì)讀取上一次的內(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"
# 二進(jìn)制方式打開(kāi)圖片文件
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("文字識(shí)別:")
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 這個(gè)字典為發(fā)送給有道詞典服務(wù)器的內(nèi)容
response = requests.post(url, data=key)
# 判斷服務(wù)器是否相應(yīng)成功
if response.status_code == 200:
# 然后相應(yīng)的結(jié)果
return response.text
else:
print("有道詞典調(diào)用失敗")
# 失敗就返回空
return None
def get_reuslt(repsonse):
# 通過(guò) 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實(shí)現(xiàn)圖片識(shí)別加翻譯功能,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
- Python調(diào)用百度OCR實(shí)現(xiàn)圖片文字識(shí)別的示例代碼
- python 識(shí)別登錄驗(yàn)證碼圖片功能的實(shí)現(xiàn)代碼(完整代碼)
- python圖片驗(yàn)證碼識(shí)別最新模塊muggle_ocr的示例代碼
- 如何利用Python識(shí)別圖片中的文字
- Python基于內(nèi)置庫(kù)pytesseract實(shí)現(xiàn)圖片驗(yàn)證碼識(shí)別功能
- python調(diào)用有道智云API實(shí)現(xiàn)文件批量翻譯
- python開(kāi)發(fā)一款翻譯工具
- python利用google翻譯方法實(shí)例(翻譯字幕文件)
- 用Python制作mini翻譯器的實(shí)現(xiàn)示例
- python實(shí)現(xiàn)在線翻譯
- python 實(shí)現(xiàn)批量圖片識(shí)別并翻譯
相關(guān)文章
opencv+python實(shí)現(xiàn)均值濾波
這篇文章主要為大家詳細(xì)介紹了opencv+python實(shí)現(xiàn)均值濾波,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-02-02
使用pygame實(shí)現(xiàn)垃圾分類(lèi)小游戲功能(已獲校級(jí)二等獎(jiǎng))
這篇文章主要介紹了使用pygame實(shí)現(xiàn)垃圾分類(lèi)小游戲功能(已獲校級(jí)二等獎(jiǎng)),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-07-07
如何利用Playwright庫(kù)進(jìn)行電影網(wǎng)站數(shù)據(jù)的獲取
playwright庫(kù)是微軟開(kāi)源的一個(gè)庫(kù),這個(gè)庫(kù)的功能更加的強(qiáng)大,除了可以實(shí)現(xiàn)同步操作,同樣也可以實(shí)現(xiàn)異步的操作,這篇文章主要介紹了如何利用Playwright庫(kù)進(jìn)行電影網(wǎng)站數(shù)據(jù)的獲取,需要的朋友可以參考下2023-05-05
Python將運(yùn)行結(jié)果導(dǎo)出為CSV格式的兩種常用方法
這篇文章主要給大家介紹了關(guān)于Python將運(yùn)行結(jié)果導(dǎo)出為CSV格式的兩種常用方法,Python生成(導(dǎo)出)csv文件其實(shí)很簡(jiǎn)單,我們一般可以用csv模塊或者pandas庫(kù)來(lái)實(shí)現(xiàn),需要的朋友可以參考下2023-07-07
老生常談python函數(shù)參數(shù)的區(qū)別(必看篇)
下面小編就為大家?guī)?lái)一篇老生常談python函數(shù)參數(shù)的區(qū)別(必看篇)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-05-05
在Tensorflow中實(shí)現(xiàn)leakyRelu操作詳解(高效)
這篇文章主要介紹了在Tensorflow中實(shí)現(xiàn)leakyRelu操作詳解(高效),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-06-06
Python類(lèi)的常用高級(jí)函數(shù)匯總
這篇文章主要介紹了Python類(lèi)的常用高級(jí)函數(shù)匯總,文章圍繞python類(lèi)函數(shù)展開(kāi)詳細(xì)內(nèi)容,具有一的的參考價(jià)值,需要的小伙伴可以參考一下,希望對(duì)你的學(xué)習(xí)有所幫助2022-03-03

