pythonav资源分享登录流程版一:

import time
from selenium import webdriver
from aip import AipOcr


def initial():
""" 初始化连接 """
APP_ID = '16611607'
API_KEY = 'wAIXfXOUS8ztLa4FrK3rZex1'
SECRET_KEY = '3b8nvjSGUZq0LPC18VVAizKYRBbny6Mq'
return AipOcr(APP_ID, API_KEY, SECRET_KEY)


def get_file_content(filePath):
""" 读取图片 """
print(333, filePath)
with open(filePath, 'rb') as f:
return f.read()


def selenium_msg():
"""保存到本地图片验证码"""
driver = webdriver.Chrome()
try:
driver.get("https://pythonav.com/login/")
time.sleep(1)
obj = driver.find_element_by_class_name('navbar-brand')
# 获取文本
print(obj.text)
# 获取标签名
print(obj.tag_name)
# 获取标签的属性
print(obj.get_attribute('href'))
obj.click()
# 获取图片验证码标签名
div_obj = driver.find_element_by_class_name('col-xs-7')
div_obj.find_element_by_id('id_code').send_keys('休息休息')
# 获取鼠标悬浮样式
obj = driver.find_element_by_class_name('btn-primary').value_of_css_property("cursor")
obj = driver.find_element_by_class_name('btn-primary')
# 获取鼠标悬浮样式
print(obj.value_of_css_property('cursor'))
# 获取颜色
print(obj.value_of_css_property('cursor'))
# 获取图标尺寸
print(obj.value_of_css_property('font-size'))
# 输入用户密码
driver.find_element_by_id('id_username').send_keys('刘亚洲')
time.sleep(1)
driver.find_element_by_id('id_password').send_keys('dsb123')
time.sleep(1)

# 保存验证码
image = driver.find_element_by_id("image_code")
print(image.size)
file_path = "b.png"
image.screenshot(file_path)

# 百度ai相关
client = initial()
image = get_file_content(file_path)
print(444, image)
# 调用通用文字识别, 图片参数为本地图片
res1 = client.basicGeneral(image)
# 调用通用文字识别(高精度版)
res2 = client.basicAccurate(image)
print(555, res1)
print(666, res1["words_result"][0]["words"]) # 拿到验证码
# 找到验证码的id并输入验证码:
driver.find_element_by_id("id_code").send_keys(res1["words_result"][0]["words"])
time.sleep(1)
# 找到登录并点击:
driver.find_element_by_class_name("btn-primary").click()
a = ''
for text in res1:
print(text)
finally:
time.sleep(1)
driver.quit()
return file_path


if __name__ == '__main__':
selenium_msg()
# 调用通用文字识别, 图片参数为远程url图片
# res3 = client.basicGeneralUrl(
# 'https://img2018.cnblogs.com/blog/1168165/201906/1168165-20190623215706582-962703809.png')
# for text in res1['words_result']:
# print(text['words'])

效果:

输出结果:

{'height': 30, 'width': 120}
333 b.png
444 b'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00x\x00\x00\x00\x1e\x08\x06\x00\x00\x00\xe7\xc9\xda\x95\x00\x00\x00\x01sRGB\x00\xae\xce\x1c\xe9\x00\x00\x03QIDATh\x81\xedZ\xb1N\xe40\x10}\x83\xae:\x89\x1aA\x0fHt\xec7\xa0+)\x10\xf0\x01HtG\x01\x12\x7f@\x87\xc4\x17 >\x80\x02jZzz\xd8\x06*\x04=W\xcf\x159\x9f\xed\xc4\xe3\xd8\xd9\xf1n\x82\xf2\xa4hW\x8e\xf3f<\xcfcO\xbcK\xcc\xccH\x04\x11!\xa3\xbb*\x87\x86\xedR\xe8\xe2\xdb\xbc\xc6C9\x02\'\x93\xf6X\x8c>\x83\x88\x00@\x8c]\xa7\x89$\t\\Z\xa4\xb6\xc1\xe4\xf0\x8c\x93I\xc6R\xbd\xc1\x04>\x84\xd8\xbd\xdc\xbe\xcc\xac"\xccw\x167\'\xde\x12\x1a\x02\x9b\x80\x85\x02\x97\x13L\xb7\xaf\x86\xa3#\xba\xa1!p\t\x94\xce\xb2\xfa\x04\x1a\xd2\x84\x8a\xf9\xaa\x117u\x81\x89\xaak\xd1\xd0\xdcNJ@\xa3\x06!\xa2\xd6-U\xbd\x8a6\xf6\xe6\xb15\xc6t\xd1\xb6/\xd9\xea{\t0\x97%\xba\x04\xdc\x89T\xbf\xbas\xfa*N&q[}\x85\x9b\xd9\x83\xcd`\xa2\xf9\xae\x12}\x164\x86b\x19\x9c\xb2\xad\xb5\xed!\x12..\xday5prR}\x0eU\\\xa0`\x06\x03U`\x96\x97\x81\xaf/\xbfmVL\xa7\xc0\xe6\xa6.g\x08\xf5\xb1\x0c\x11j\x19l\xabB\xb7\xad\x12\xd7\xdd\xb34\x92kc\xa3i\xe7\xee.\x8f\xa3\xcf\xafR\x9f\x9f\xf6m$t}|\xc4\x9f7+#\x11\xe9\t,-\x04n\xb3+\xb2F|\x99\x81\xf3\xf3\xea\xfb\xde\xdel\\!\xc1\x17\x91\xb5\xbb\xbb\xc0\xca\x8a\xb5_\xf9@\xce\x05\xac\xae\x92\'b\xfd2\xa7\x84\xcc\xdc\\\xa2u~1\xb2\x0ev\xb9\xdf\xc5\x96\x0bMa\xea\xc5\\xb\xb6\x1f\xcb\xca\xfc\xa1g\xb9\xc1i8rc\'\x1eU\xf6\rRA\xe6\xbe\xb6\xec\xef\x9b\xbe\xf6\x99T^\xe9\xf2\xfb\x00\xc0\x04~F\xfd\x06\xc0^\xd6\xe4\xd8p\x9fcf\x1c\x1e\xda\xa3\xe2:\xe7\xebk\xfe\xe4\r\x16Y\xb3f\xb1v\x06\xc7N}\xe4\x0c\xf8\xdf#\xca\xdd6\xce&}\xbb\xbd:g\xceqdJa\x97S\xfc\xfd\x90n\x94\xfe\x19n:\xf5m\xa5@\xea\x17\n\x12\xb3\xf9l\x130\xc5\xb6\xe1\xf8\x15c\x82/\xb4\xec\xdf,x{s\xc7V\xf3 \xa0Y\xebkR\xaa\xd0~\xa0~\x02\xf8\x039{\xe4=F\x13\xeeJ!\x8d#G\xe06\x17\xb5\x0e_\x88\xaa\xd7\xc0\xe7\xe7v[m6\xc5\x0c6\xb0\x9b{\xfaRg\x03\x1b\n\xa8|\xaf\x04\x1e\x1f\xad\xbd\xd4\x15\xa0\x0e"\xe0\xf22\x1e\xcc\xedm\xdb7F\x97\x9a0//2\x97\xad1\x80\x87\x878O\xa1\xbf\xecT\x9f\xcc\xc0\xfb;\xb0\xb6\xd6l\x9f\x07*{:\xff\x1c1|\xb7\xb7\xc0\xc1\x81d\x0b\xffl\xcdl*)V)YL\xcc\xcc\xda\xfb\xad4\xd8.\x02\xc7|3\x02\xc6V\n\xd7\x9eV\xf1\xe8\xf2\x96:Uk\x9b0\xee\xfd\xf5u\xbf\xa6q\xb1T\x11\xe4\xbe\xa7\xa5\xc3=\x81\xa9l\xe5=\x1f\xf3mk\x0b\x008x\xdac\x9fO\xe3j\xfa\x1d\x1e\xf7\xce\x8e\xcf[?U\xd3\x84\xe1==\xb5m\xf7\xf7\xd5\xf8\x8e\x8e\xec}I\\@\xb1\xc8*\x89E\xf9 \x17f\xe1\xfe%\\\xbc\xbe\x06\x8e\x8fe;F\xec\x9b\x1b!\xd3]\x81\xfb \xe6\x08\x1fD\xc0\xd9\x19pu\xe5\xb7O&\xc0\xd3S\xc2R^\xa2\xc8\x1a\xd1\x1f\x0c\xf6\x1f\x1d#\xd2\xb0\x04\xf4\xfb\xa7\xb3\xa1C:COm\xcb\xb1\x13l\x1f\x97\xe8\xef\x01\xa9~\x1a\x97\xe8\x1e\xa2K&Ky\xfa\x17\x8cg\xf2\xceP\x15\xca\xe9\x00\x00\x00\x00IEND\xaeB`\x82'
555 {'log_id': 8235000937407263369, 'words_result_num': 1, 'words_result': [{'words': '飞'}]}
666 飞
log_id
words_result_num
words_result

猜你喜欢

转载自www.cnblogs.com/zhang-da/p/12286297.html