一、准備工作
1、安裝第三方庫
py -3.6 -m pip install tesseract
py -3.6 -m pip install pytesseract
2、安裝軟件
下載地址:https://digi.bib.uni-mannheim.de/tesseract/tesseract-ocr-w64-setup-v4.0.0-beta.1.20180414.exe
3、配置環境變量
將上面這個軟件配置到環境變量中,如 C:\Program Files (x86)\Tesseract-OCR (安裝目錄)
4、重啟電腦(如果沒有重啟,那么會報系統找不到指定文件的錯誤)
二、代碼
from selenium import webdriver from PIL import Image import pytesseract import time at=webdriver.Chrome() at.get("http://192.168.0.137:8005") at.maximize_window() at.find_element_by_id("btn_login").click() # 點擊登錄 at.find_element_by_id("UserName").clear() # 清空輸入框 at.find_element_by_id("UserName").send_keys("chenbin") # 輸入用戶名 at.find_element_by_id("PassWord").clear() # 清空輸入框 at.find_element_by_id("PassWord").send_keys("abc123") # 輸入密碼 at.find_element_by_id("imgCode").screenshot("3.png") # 獲取驗證碼的圖片 image = Image.open("3.png") # 獲取圖片信息 vcode = pytesseract.image_to_string(image) # 識別圖片的驗證碼 at.find_element_by_id("validateCode").send_keys(vcode) # 輸入驗證碼 at.find_element_by_id("btn_login").click() # 點擊登錄 time.sleep(2) login_name = at.find_element_by_id("cur-login-user-name").text # 獲取登錄名 if login_name.lower() == "chenbin": print('登錄成功') else: print('登錄失敗')
三、總結
上面這個方法識別一些簡單的驗證碼:數字或者字母,如果需要識別一些復雜的可以找一些接口來識別