自動化登錄腳本(驗證碼識別)


一、准備工作

  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('登錄失敗')

 

三、總結

  上面這個方法識別一些簡單的驗證碼:數字或者字母,如果需要識別一些復雜的可以找一些接口來識別


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM