1安装selenium包

2元素定位

各个定位的示范
1. driver.find_element_by_xpath(value) 2. driver.find_element_by_css_selector(value) 3. driver.find_element_by_id(value) 4. driver.find_element_by_name(value) 5. driver.find_element_by_class_name(value) 6. driver.find_element_by_tag_name(value) 7. driver.find_element_by_link_text(value) 8. driver.find_element_by_partial_link_text(value)

一般用于a标签、定位元素内容必须全部匹配 7. driver.find_element_by_link_text(value) 这个可以是模糊匹配、但是必须代表唯一性—__推荐 8. driver.find_element_by_partial_link_text(value)
xpath
1. driver.find_element_by_xpath(value)
能使用相对路径不使用绝对路径

css定位

#1.使用css id.选择器定位用户名输入admin
driver.find_element_by_css_selector("#userA").send_keys("admin")
#2.使用css属性选择定位密码框输入123456
driver.find_element_by_css_selector("[name='passwordA']")send_keys("123456")
#3.使用css cLass选择器定位电话号码:18611112222
driver.find_element_by_css_selector(".telA").send_keys("18611112222")
#4.使用css元素选择器定位span标签获取文本值
span driver.find_element_by_css_selector("span").text
print("获取的span标签文本值:",span)
#5.使用层级选择器定位email输入[email protected]
driver.find_element_by_css_selector("p>input[placeholder:='电子邮箱A']")
3元素操作


获取元素信息

鼠标操作

键盘操作

元素等待

隐式等待:

显式等待:

#实例化NebDriverWait()并调用until方法
#注意:调用until方法返回的一定是一个元素
username WebDriverWait(driver,timeout=10,poll_frequency=0.5).until(lambda x:x.find_element_by_id("#user")).send_keys("admin)
#注意:此时username还不是元素,只有代码运行起来才是元素
username.send_keys("admin")
WebDriverWait (driver,timeout=10,poll frequency=0.5).until(lambda x:x.find element_by_id("#user")).send_keys("admin")
参数:
timeout:超时时间
pol1_frequency:访问频率,默认0.5秒找一次元素
x:x为driver,它是WebDriverWait:类将传入的driver赋值给类self.driver,unil方法调用了self,_driver;
