import time
from selenium import webdriver
from selenium.webdriver.support.select import Select
# 1.登录
driver = webdriver.Chrome()
driver.implicitly_wait(10)
driver.maximize_window()
driver.get("http://172.0.0.1/index.php?m=user&c=public&a=login")
driver.find_element_by_id("username").send_keys("yaya")
driver.find_element_by_id("password").send_keys("123456")
driver.find_element_by_class_name("login_btn").click()
time.sleep(3)
# 2.点击“进入商城购物”
driver.find_element_by_link_text("进入商城购物").click()
# 3.搜索“iphone”
driver.find_element_by_name("keyword").send_keys("iphone")
driver.find_element_by_class_name("btn1").click()
# 4.点击商品图片
driver.find_element_by_xpath("/html/body/div[3]/div[2]/div[3]/div[1]/div[1]/a/img").click()
# 5、切换窗口:
# 5.1.找到新窗口的名字
new_window = driver.window_handles[-1]
# 5.2.切换到新窗口、
driver.switch_to.window(new_window)
# 6.把选择的商品加入购物车
driver.find_element_by_id("joinCarButton").click()
#7,去购物车结算
driver.find_element_by_class_name("shopCar_T_span3").click()
# 点击“结算”
driver.find_element_by_css_selector(".shopCar_btn_03.fl").click()
# 8.添加新地址
driver.find_element_by_class_name("add-address").click()
# 9.收货人姓名
driver.find_element_by_name("address[address_name]").send_keys("yaya")
# 10.输入手机号
driver.find_element_by_name("address[mobile]").send_keys("13612563478")
# 11.选择收货地区--省
sheng = driver.find_element_by_id("add-new-area-select")
Select(sheng).select_by_visible_text("广东省")
# 12.选择收货地区--市
shi = driver.find_elements_by_class_name("add-new-area-select")[1]
Select(shi).select_by_visible_text("深圳市")
# 13.选择--地区
qu = driver.find_elements_by_tag_name("select")[2]
Select(qu).select_by_visible_text("宝安区")
#14输入街道
driver.find_element_by_name(‘address[address]‘).send_keys(‘大街1号‘)
#15.输入邮编
driver.find_element_by_name(‘address[zipcode]‘).send_keys(‘721405‘)
#16.点击确定
driver.find_element_by_xpath("/html/body/div[1]/div/table/tbody/tr[2]/td[2]/div/table/tbody/tr[3]/td/div/button[1]").click()
遇见问题:
1、出现分页,当出现分页时需要把定位的页面进行切换,具体方法:
# 5.1.找到新窗口的名字,new_window是一个列表,[-1]是定位到最后一个页签
new_window = driver.window_handles[-1]
# 5.2.切换到新窗口、
driver.switch_to.window(new_window)
2、出现界面有下拉框进行选择时,此时定位不到元素,需要进行转换:
from selenium.webdriver.support.select import Select
sheng = driver.find_element_by_id("add-new-area-select")
Select(sheng).select_by_visible_text("广东省")
3、当页面打开较慢,存在不稳定性时,需要加延时
import time
time.sleep(3)
原文:https://www.cnblogs.com/duyaya/p/10957151.html