本章主要学习利用find_element(by)定位元素,通过百度搜索编辑框进行学习:
前面我们学习了selenium的八种定位方式
通过by定位元素,使用的方法是:
find_element()
它包含两个参数:
第一个参数是定位方式,这个由 By 提供;另
第二个参数是定位的值
特别注意:
在使用by是需要将by类导入,即from selenium.webdriver.common.by import By
如:
find_element(By.ID,"kw")
find_element(By.NAME,"wd")
find_element(By.CLASS_NAME,"s_ipt")
find_element(By.TAG_NAME,"input")
find_element(By.LINK_TEXT,u"新闻")
find_element(By.PARTIAL_LINK_TEXT,u"新")
find_element(By.XPATH,"//*[@class='bg s_btn']")
find_element(By.CSS_SELECTOR,"span.bg s_btn_wr>input#su")
1 # coding=utf-8 2 from selenium import webdriver 3 from selenium.webdriver.common.by import By 4 import time 5 6 driver = webdriver.Chrome() 7 driver.maximize_window() 8 driver.implicitly_wait(5) 9 10 driver.get("http://www.baidu.com") 11 try: 12 driver.find_element(By.NAME, "wd").send_keys("selenium") 13 driver.find_element(By.XPATH, "//*[@value='百度一下']").click() 14 time.sleep(3) 15 print("测试通过,By定位成功") 16 except Exception as e: 17 print("测试失败,By定位失败", format(e)) 18 driver.quit()
通过selenium的单元素定位,我个人推荐xpath。不过总的来说只要能够定位成功元素,达到目的你就成功了。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。