Selenium元素定位方法

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.Selenium经典的八大元素定位法:id、name、class_name、tag_name、link_text、partial_link_text、xpath、css_selector
2.八大元素定位法
#coding:utf-8

from selenium import webdriver
driver = webdriver.Chrome()#将浏览器驱动的路径配置在path中

a.通过元素id定位元素,唯一标识元素(优先选择)

driver.find_element_by_id("id值")

b.通过元素属性name定位元素

driver.find_element_by_name("name值")

c.通过元素属性class_name定位元素

driver.find_element_by_class_name("class_name的值")

d. 通过元素属性tag_name定位元素

driver.find_element_by_tag_name("tag_name的值")

e.通过链接文本或部分链接文本

driver.find_element_by_link_text("链接文本")
driver.find_element_by_partial_link_text("部分链接文本")

实例:

<a href ="http://www.baidu.com">转到百度</a>`#转到百度就是链接文本

f.通过CSS选择器

driver.find_element_by_css_selector("css表达式")#css表达式在CSS详细说明

g.通过XPATH选择器

driver.find_element_by_xpath("xpath表达式")#xpath表达式在xpath详解博客中

h.通过Javascript选择

driver.execute_script("return $('#kw')[0]")

【f.g可通过右键copy–copy selector或者copy xpath获得】
3.通过find_element方法

from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
element = driver.find_element(by = By.xx,value = "xx属性的值")

(xx:ID、NAME、CLASS_NAME、TAG_NAME、PARTIAL_LINK_TEXT、LINK_TEXT、CSS_SELECTOR、XPATH)
By类的类属性实际就是元素定位的方式

class By(object):
    """
    Set of supported locator strategies.
    """

    ID = "id"
    XPATH = "xpath"
    LINK_TEXT = "link text"
    PARTIAL_LINK_TEXT = "partial link text"
    NAME = "name"
    TAG_NAME = "tag name"
    CLASS_NAME = "class name"
    CSS_SELECTOR = "css selector"

4.多个元素定位
driver.find_elements_by_具体元素定位方式("具体表达式")#得到的多组数据以列表形式存储,用for循环遍历即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值