Python Selenium 中的 css_selector 定位

2023-04-17 00:00:00 python selenium css
  1. 什么是 css_selector?
    CSS Selector 是一种基于 HTML 标签属性、层级和文本内容等信息来定位元素的方法。CSS Selector 语法类似于 CSS 样式规则,通过指定选择器来获取符合条件的元素。
    通过使用 css_selector,我们可以轻易的通过 HTML 标签的属性进行元素的定位。
  2. css_selector 语法规则:
    我们可以通过属性、层级和文本内容等信息定位元素,-css_selector 的语法如下图所示:
    css_selector
    其中,符号说明: * tagname 标签名 * #id id 属性值 * .class class 属性值 * [] 任意属性 * :nth-child(n) 元素层级 * , 分组多个元素选择器
  3. css_selector 应用:
    我们可以使用 css_selector 定位页面元素,如:
# 导入 webdriver 模块
from selenium import webdriver
# 实例化浏览器对象
driver = webdriver.Chrome()
# 打开网页
driver.get("https://www.baidu.com")
# 使用 css_selector 定位搜索框元素,并输入关键字
search_box = driver.find_element_by_css_selector("#kw")
search_box.send_keys("pidancode.com")
# 使用 css_selector 定位搜索按钮,并点击
search_button = driver.find_element_by_css_selector("#su")
search_button.click()
# 关闭浏览器
driver.quit()

这段代码会使用 css_selector 定位百度搜索框元素,并输入关键字“pidancode.com”;然后通过 css_selector 定位搜索按钮,并点击搜索;最后关闭浏览器。
如果我们需要使用字符串作为范例,可以将代码改为:

# 定位百度搜索框元素,并输入关键字“pidancode.com”
search_box = driver.find_element_by_css_selector("#kw")
search_box.send_keys("pidancode.com")
# 定位百度搜索按钮,并点击
search_button = driver.find_element_by_css_selector("#su")
search_button.click()

相关文章