UI_OCR自动化获取图片验证码
代码
ocr_code.py
from time import sleep
import easyocr
import requests
class OcrCode:
@classmethod
def get_by_ocr(cls, img_url):
# 使用requests 发请求拿到图片结果
result = requests.get(img_url, verify=False)
# 保存图片到本地
with open("code.png", "wb") as f:
f.write(result.content)
sleep(1)
# 实例化easyocr
ocr = easyocr.Reader(['ch_sim', 'en'])
# 识别图片内容,并去掉空格
code = ocr.readtext("code.png")[0][1].replace(" ", "")
print(f"识别到的验证码为: {code}")
return code
test_ocr.py
from time import sleep
from selenium import webdriver
from selenium.webdriver.common.by import By
from L5.OCRCode.ocr_code import OcrCode
class TestCode:
def setup_class(self):
self.driver = webdriver.Chrome()
self.driver.implicitly_wait(10)
# 打开页面
self.driver.get("https://vip.ceshiren.com/#/ui_study/code")
def teardown_class(self):
self.driver.quit()
def test_code(self):
# 获取验证码图片链接
img_url = self.driver.find_element(By.CSS_SELECTOR, ".code1:nth-ch服务器托管网ild(2) img").get_attribute("src")
# 获取验证码内容
code = OcrCode.get_by_ocr(img_url)
# 输入验证码
self.driver.find_element(By.CSS_SELECTOR, ".code1:nth-child(2) input").send_keys(code)
# 点击确定
self.driver.find_element(By.CSS_SELECTOR, ".code1:nth-child(2) button").click()
# 断言验证服务器托管网码是否正确
sleep(1)
text = self.driver.find_element(By.CSS_SELECTOR, ".el-message p").text
print(text)
assert text == "验证成功"
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net
相关推荐: Python Flask: 构建轻量级、灵活的Web应用{{ message }}Form ExampleUser List
Flask是一个流行的Python Web框架,以其轻量级、灵活和易学的特性受到开发者的喜爱。本文将深入探讨Flask框架的各个方面,通过详实的示例代码,帮助大家更全面地了解和掌握这一强大的工具。 1. 安装与基本用法 首先,需要安装Flask。 使用以下命令…