#web自动化基本代码
#1.导入模块
import time
from selenium import webdriver
from selenium.webdriver import ActionChains
#2.实例化浏览器对象:类名()
driver = webdriver.Chrome()
#3.打开网页:必须包含协议头
driver.get("http://demo6.tp-shop.cn/")
#窗口最大化
driver.maximize_window()
#定位注册按钮
tp_register = driver.find_element_by_class_name("red")
tp_register.click()
#title获取页面title,验证是否为注册页面
print("页面标题:",driver.title)
#使用手机注册
phone_register = driver.find_element_by_class_name("uli")
phone_register.click()
#输入用户名
username_register = driver.find_element_by_id("username")
username_register.send_keys("15938324908")
#检查用户名是否为空或者未输出错误信息
username_register_check = driver.find_element_by_id("err_username")
username_register_message_check = username_register_check.text
print("错误信息:",username_register_message_check)
#图像验证码设置隐式等待,若元素存在则输出验证码存在
driver.implicitly_wait(10)
identifying_code = driver.find_element_by_id("reflsh_code2")
#输入图像验证吗
placeholder = driver.find_element_by_id("verify_code2")
placeholder.send_keys("qwer")
#检查验证码是否为空
placeholder_check = driver.find_element_by_id("err_verify_code")
placeholder_message_check = placeholder_check.text
print("错误信息:",placeholder_message_check)
#检查验证码是否正确
#输入密码
password = driver.find_element_by_id("password")
password.send_keys("145270")
#检查密码格式是否正确
password_register_check = driver.find_element_by_id("err_password")
password_register_message_check = password_register_check.text
print("错误信息:",password_register_message_check)
#确认密码
password_sure_register = driver.find_element_by_id("password2")
password_sure_register.send_keys("145270")
#检查密码是否一致,若不一致是否报错
password_sure_register_check = driver.find_element_by_id("err_password2")
password_sure_register_message_check = password_sure_register_check.text
print("错误信息:",password_sure_register_message_check)
#向下拉滚动条到最底层
js_down= "window.scrollTo(0,document.body.scrollHeight)"
driver.execute_script(js_down)
'''
document.documentElement.scrollHeight——浏览器所有内容高度
document.body.scrollHeight—— 浏览器所有内容高度
document.documentElement.scrollTop—— 始终为0
document.body.scrollTop—— 浏览器滚动部分高度
document.documentElement.clientHeight——浏览器可视部分高度
document.body.clientHeight——浏览器所有内容高度
'''
#勾选同意书
Signed_informed_consent = driver.find_element_by_class_name("iyes")
Signed_informed_consent.click()
#检查同意协议书是否被选中
Signed_informed_consent_check = Signed_informed_consent.text
#若未选中,输出错误信息
print("错误信息:",Signed_informed_consent_check)
print()
#同意协议并注册
agree_register = driver.find_element_by_id("submit")
agree_register.click()
#获取验证码错误警告弹窗
'''placeholder_alert = driver.switch_to.alert
#获取弹窗的文本信息
placeholder_alert.text
#确定警告弹窗
placeholder_alert.accept()'''
#后退页面
driver.back()
time.sleep(3)
driver.back()
time.sleep(3)
#定位登录按钮并点击
login = driver.find_element_by_link_text("登录")
login.click()
#输入用户名
username_login = driver.find_element_by_id("username")
username_login.send_keys("输入用户名")
#输入密码
password_login = driver.find_element_by_id("password")
password_login.send_keys("输入密码")
#点击登录
login_button= driver.find_element_by_class_name("J-login-submit")
login_button.click()
#title获取页面title
print("页面标题:",driver.title)
#获取当前页面url
print("页面地址:",driver.current_url)
#4.观察效果
time.sleep(3)
#5.关闭页面
driver.quit()