最近报名了一个大学提升个人学历等课程,需要每天登陆上网站刷视频,可是每天都要输入验证码,真是有点烦人哦。
于是我想到了使用脚本,识别图片中验证码输入 验证码登陆
下面是真正的干货,
import time
from selenium import webdriver
import ddddocr
def rec_image(image_path):
ocr = ddddocr.DdddOcr()
# 识别图片的方法
with open(image_path, 'rb') as f:
img_bytes = f.read()
res = ocr.classification(img_bytes)
# print(res) #打印出识别的验证码
return res
path = r'/usr/local/bin/chromedriver'
driver = webdriver.Chrome(executable_path=path)
# 进入博士报名注册页面
url = '登录地址'
driver.get(url)
driver.maximize_window()
driver.find_element_by_id("normal_login_username").send_keys("账号")
driver.find_element_by_id("normal_login_pwd").send_keys("密码")
code_ele=driver.find_element_by_class_name("login_code__13Bc_")
# 将验证码图片保存本地
code_ele.screenshot("captch.png")
code=rec_image("captch.png")
print("验证码为",code)
driver.find_element_by_id("normal_login_loginCode").send_keys(code)
#登陆按钮
driver.find_element_by_class_name("ant-btn.login-form-button.ant-btn-primary").click()
time.sleep(10)
driver.quit()
执行脚本后成功进入网站主页。
就是窗户纸的事,很简单的哦!大家可以改成其他的网站对应修改一下试试哦!