元素定位的方式有八种,最常用的是id、name、xpath。绝对路径以'/'表示,相对路径以‘//’表示。xpath写法://*[@id='name']----*代表标签,id代表名称,name代表值
xpath其中可以使用模糊匹配查询:
1、用contains关键字
driver.find_element_by_xpath("//*[contains(@class,'nickName')]").click()
2、用text()
driver.find_element_by_xpath("//*[text()='退出']").click()
driver.find_element_by_xpath("//*[contains(text(),'退')]").click()
# 定位方式一:id # driver.find_element_by_id() # 定位方式二:name # driver.find_element_by_name() # 定位方式三:xpath # driver.find_elements_by_xpath() # 定位方式四:标签名 # driver.find_element_by_tag_name() # 定位方式五:class name # driver.find_element_by_class_name() # 定位方式六:链接文字 # driver.find_element_by_link_text() # 定位方式七:部分的链接文字 # driver.find_element_by_partial_link_text() # 定位方式八:css # driver.find_element_by_css_selector()
最常见使用id、name、xpath,
# 导入selenium包
from selenium import webdriver
import time
# 启动浏览器
driver=webdriver.Chrome()
# 最大化浏览器
driver.maximize_window()
# 打开指定URL
driver.get('https://blog.csdn.net')
# 定位到CSDN搜索框并输入软件测试
driver.find_element_by_id('toolbar-search-input').send_keys('静静:又提了个单')
# 等待3秒
time.sleep(3)
# 点击放大镜查询
driver.find_element_by_id('toolbar-search-button').click()
# 等待3秒
time.sleep(3)
# 切换句柄
# 关闭当前页面
driver.switch_to.window(driver.window_handles[1])
# 定位方式一:xpath
driver.find_element_by_xpath("//*[@id='little_search']/ul/li[7]").click()
# 等待3秒
time.sleep(3)
# 定位方式二:class name
driver.find_element_by_class_name('ctop-coder-age').click()
# 等待3秒
time.sleep(3)
# 切换句柄
driver.switch_to.window(driver.window_handles[2])
# 定位方式三:tag_name(标签名)
driver.find_element_by_tag_name('h4').click()
driver.close()