常用的元素定位方法
- id定位 :find_element(By.ID,“”)
- name定位:find_element(By.Name,“”)
- tag定位 :find_element(By.TAG_NAME,“”)
- class定位: find_element(By.CLASS_NAME,“”)
- link_text: find_element(By.LINK_TEXT,“”)
- partial link定位:find_element(By.PARTIAL_LINK_TEXT,“”)
- XPath定位:find_element(By.XPATH,“”)
- CSS_selector定位:find_element(By.CSS_SELECTOR,“”)
实现代码
```python
from selenium import webdriver
import t`在这里插入代码片`ime
from selenium.webdriver.common.by import By
url = "https://www.baidu.com"
driver = webdriver.Chrome()
driver.get(url)
'''1、id 定位'''
# driver.find_element(By.ID,"kw").send_keys("id 定位") # 在所搜框输入关键字
# driver.find_element(By.ID,"su").click() # 点击搜索
'''2、name 定位'''
# driver.find_element(By.NAME,"wd").send_keys("name 定位")
# driver.find_element(By.ID,"su").click()
'''3、tag 定位 通常用来定位签名,不常用'''
# tag = driver.find_element(By.TAG_NAME,"input")
# print(tag)
'''4、class 定位'''
# driver.find_element(By.CLASS_NAME,"s_ipt").send_keys("class 定位")
# driver.find_element(By.ID,"su").click()
'''5、link_text 定位 根据页面上的完整文字来进行定位 专门定位文本链接'''
# driver.find_element(By.LINK_TEXT,"新闻").click()
'''6、partial_link_text 定位 根据页面上的部分文字来进行定位 取文字链接的部分文字进行定位,这部分文字需要唯一标识这个链接'''
# driver.find_element(By.PARTIAL_LINK_TEXT,"中国").click()
'''7、xpath 定位 '''
# 绝对定位
# driver.find_element(By.XPATH,"/html/body/div[1]/div[1]/div[5]/div/div/form/span[1]/input").send_keys("xpath绝对定位")
# 相对定位
# //*[@id="kw"] * 表示当前页面的任意标签下 元素id为kw
# driver.find_element(By.XPATH,'//*[@id="kw"]').send_keys("xpath 相对路劲定位")
# //input[@id="kw"] input 表示当前页面的某个input标签下 元素id为kw
# driver.find_element(By.XPATH,'//input[@id="kw"] ').send_keys
# driver.find_element(By.ID,"su").click()
'''8、CSS_定位 '''
# class选择器:. id选择器:#
driver.find_element(By.CSS_SELECTOR,".s_ipt").send_keys("class选择器")
driver.find_element(By.CSS_SELECTOR,"#su").click()
time.sleep(5)
driver.quit()