selenium中css选择器的使用

133 阅读1分钟

基本语法:

find_element(By.CSS_SELECTOR, CSS Selector参数)

类选择器:

.class

elements = wd.find_elements(By.CSS_SELECTOR, '.animal')

id选择器:

#id

element = wd.find_element(By.CSS_SELECTOR, '#searchtext')

tag选择器:

elements = wd.find_elements(By.CSS_SELECTOR, 'div')

直接子元素:

元素1 > 元素2

后代元素:

元素1 元素2

根据属性选择:

使用中括号[]

element = wd.find_element(By.CSS_SELECTOR, '[href="www.miitbeian.gov.cn"]')

属性当中包含字符串:

a[href*="miitbeian"]

属性以某字符串开头:

a[href^="miitbeian"]

属性以某字符串结尾:

a[href$="miitbeian"]

组选择:

用逗号分隔: div,#BYHY(同时选择所有tag名为div的元素 和 id为BYHY的元素)

按次序选择子节点:

选择的是 第2个子元素,并且是span类型:

span:nth-child(2)

选择第二个类型为span的元素:

span:nth-of-type(2)

选择第倒数第1个子元素,并且是p元素:

p:nth-last-child(1)

选择最后一个类型为p的元素:

p:nth-last-of-type(1)

奇偶节点:

选择父元素的 偶数节点

p:nth-child(even)

选择父元素的 奇数节点

p:nth-child(odd)

如果要选择的是父元素的 某类型偶数节点,使用 nth-of-type(even)

如果要选择的是父元素的 某类型奇数节点,使用 nth-of-type(odd)

兄弟节点选择

h3 后面紧跟着的兄弟节点 span:

h3 + span

h3 后面所有的兄弟节点 span:

h3 ~ span