python+selenium+chrome 自动化测试TPshop商城项目实战(二)——通过cookies绕过验证码以及添加商品到购物车

#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()

#整理cookie信息为字典数据

cookies_value = ({'name':'PHPSESSID','value':'31g8imbjk2ocvekrumjm042el2'})
#调用方法,添加cookie信息

driver.add_cookie(cookies_value)

#刷新页面,发送cookie信息给服务器验证

driver.refresh()

#获取登录后的页面和地址

print("页面地址:",driver.current_url)

#获取当前页面标题

print("页面标题:",driver.title)

time.sleep(3)

#定位搜索框类型选择,商品或店铺

#search_type = driver.find_element_by_id("select-h")


#实例化鼠标对象(关联浏览器对象)、

action = ActionChains(driver)

# 鼠标悬停触发隐藏元素商品或店铺

action.move_to_element(search_type)

#执行鼠标操作

action.perform()

#设置隐式等待,直至商品出现

driver.implicitly_wait(10)

#定位隐藏元素店铺

seareah_shop = driver.find_element_by_link_text("商品")

#点击隐藏元素店铺

seareah_shop.click()

#定位搜索框

search_field = driver.find_element_by_id("q")

search_field.send_keys("李宁羽绒服")

time.sleep(3)

#点击搜索

search_buttom = driver.find_element_by_class_name("ecsc-search-button")

search_buttom.click()

#定位羽绒服,并点击

linning_shop = driver.find_element_by_class_name("lazy")

linning_shop.click()

time.sleep(3)

#获取搜索错误警告弹窗

shop_alert = driver.switch_to.alert

#获取弹窗的文本信息

shop_alert.text

#确定警告弹窗

shop_alert.accept()

#查看衣服部分图片

dress_some_pictures = driver.find_element_by_class_name("small-pic-li")

action.move_to_element(dress_some_pictures).perform()

#选择S码

choice_dress_size = driver.find_element_by_id("goods_spec_a_2")

choice_dress_size.click()

#选择数量

dress_number = driver.find_element_by_id("number")

#鼠标双击选中

action.double_click(dress_number)

#对元素进行进行删除

#dress_number.clear()

#修改数量为2

dress_number.send_keys(2)

time.sleep(3)

#加入购物车

shopping_cart = driver.find_element_by_id("join_cart")

shopping_cart.click()

time.sleep(3)


#获取温馨提示弹窗
Reminder = driver.find_element_by_class_name("layui-layer-title")
Reminder.driver.switch_to.frame('layui-layer1')
#跳转购物车结算界面
shopping_cart_settlement = driver.find_element_by_class_name("ui-button-122")
shopping_cart_settlement.click()
#4.观察效果
time.sleep(3)
#5.关闭页面
driver.quit()

上一篇:You may have an infinite update loop in a component render function


下一篇:15 本你必须阅读的 PyTorch 书籍