一.id定位
from selenium import webdriver
from time import sleep
# 实例化谷歌浏览器
driver = webdriver.Chrome()
# 打开项目-url
driver.get("https://www.baidu.com/")
# id定位百度搜索文本框
element = driver.find_element_by_id("kw")
# 给文本框传入值
element.send_keys("淘宝官网")
# 简写:driver.find_element_by_id("kw").send_keys("淘宝官网")
#暂停3s
sleep(3)
#退出浏览器
driver.quit()
二.name定位
from selenium import webdriver
from time import sleep
driver = webdriver.Chrome()
driver.get("https://www.baidu.com")
driver.find_element_by_name("wd").send_keys("测试定位name")
sleep(3)
driver.close()
三.class_name定位
from selenium import webdriver
from time import sleep
dirver = webdriver.Chrome()
dirver.get("http://www.baidu.com")
dirver.find_element_by_class_name("s_ipt").send_keys("class_name定位测试")
sleep(3)
dirver.close()
四.tag_name定位
默认定位第一个标签元素
from selenium import webdriver
from time import sleep
driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
driver.find_element_by_tag_name("input").send_keys("定位标签")
sleep(3)
driver.close()
五.link_text定位
输入要定位元素的全部文本
from selenium import webdriver
from time import sleep
driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
driver.find_element_by_link_text("抗击肺炎").click()
sleep(3)
driver.close()
六.partial_link_text定位
输入要定位元素的部分代表性唯一文本
from selenium import webdriver
from time import sleep
driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
driver.find_element_by_partial_link_text("肺炎").click()
sleep(3)
driver.close()
七.Xpath定位
7.1绝对路径定位
from selenium import webdriver
from time import sleep
driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
driver.find_element_by_xpath("/html/body/div/div/div[2]/a[2]").click()
sleep(3)
driver.close()
7.2相对路径
从第一个符合条件元素开始(一般配合属性来区分);如: //input[@id='userA']
注意将复制过来的""
变成''
from selenium import webdriver
from time import sleep
driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
driver.find_element_by_xpath("//*[@id='kw']").send_keys("sousuo")
sleep(3)
driver.close()
八.CSS定位
from selenium import webdriver
from time import sleep
driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
driver.find_element_by_css_selector("#kw").send_keys("sousuo")
sleep(3)
driver.close()
定位一组元素
find_elements_by_css_selector()
想要获得一组元素
观察其特征,可以自己写CSS_selector:div[id=content_left]>div>h3>a
# 导包
from selenium import webdriver
from time import sleep
# 开浏览器
driver = webdriver.Chrome()
# 访问百度
url = 'http://www.baidu.com'
driver.get(url)
# 定位输入框
el = driver.find_element_by_id('kw')
# 输入关键字
el.send_keys('selenium')
# 定位搜索按钮
el_sub = driver.find_element_by_id('su')
el_sub.click()
el_list = driver.find_elements_by_css_selector('div[id="content_left"]>div>h3>a')
print(el_list)
sleep(5)
driver.close()