如何详细解析Python脚本中Selenium的Web元素定位方法?

2026-06-11 02:471阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1248个文字,预计阅读时间需要5分钟。

如何详细解析Python脚本中Selenium的Web元素定位方法?

目录:Selenium特点 + 八种定位方式

1.使用xpath定位:driver.find_element_by_xpath(value)

2.使用CSS选择器定位:driver.find_element_by_css_selector(value)

3.使用ID定位:driver.find_element_by_id(value)

4.使用name定位:driver.find_element_by_name(value)

5.使用class_name定位:driver.find_element_by_class_name(value)

6.使用link_text定位:driver.find_element_by_link_text(value)

7.使用partial_link_text定位:driver.find_element_by_partial_link_text(value)

8.使用tag_name定位:driver.find_element_by_tag_name(value)

目录
  • Selenium特点
  • 八种定位方式
    • 1、driver.find_element_by_xpath(value)
    • 2、driver.find_element_by_css_selector(value)
    • 3、driver.find_element_by_id(value)
    • 4、driver.find_element_by_name(value)
    • 5、driver.find_element_by_class_name(value)
    • 6、driver.find_element_by_tag_name(value)
    • 7、driver.find_element_by_link_text(value)
    • 8、driver.find_element_by_partial_link_text(value)

Selenium特点

开源,免费

多浏览器支持:firefox、chrome、IE

多平台支持:linux 、windows、MAC

多语言支持:java、python、ruby、php、C#、

对web页面有良好的支持

简单(API 简单)、灵活(用开发语言驱动)

支持分布式测试用例执行一、

八种定位方式

1、driver.find_element_by_xpath(value)

可以使用自带的copy xpath 进行定位
不推荐使用这种方法进行元素定位,后续开发修改代码路径发生变化就需要重新进行定位

// 使用xpath进行定位 from selenium import webdriver driver = webdriver.Chrome() //打开谷歌 driver.get("www.baidu.com") //打开百度链接 //通过id定位到输入框的位置,send_keys('') 往输入框填写内容 driver.find_element_by_name("wd").send_keys("Selenium八大元素定位") //通过id定位到按钮的位置并进行点击,click() 点击操作 driver.find_element_by_id("su").click() //通过xpath定位获取元素位置 driver.find_element_by_xpath('//*[@id="2"]/h3/a').click()

利用元素属性进行xpath定位

// 利用元素属性进行xpath定位 from selenium import webdriver driver = webdriver.Chrome() //打开谷歌 driver.get("www.baidu.com") //打开百度链接 //通过id定位到输入框的位置,send_keys('') 往输入框填写内容 driver.find_element_by_name("wd").send_keys("Selenium八大元素定位") //通过id定位到按钮的位置并进行点击,click() 点击操作 driver.find_element_by_id("su").click() //通过元素属性进行xpath定位 元素的值需要是唯一的 driver.find_element_by_xpath('//a[@href="www.baidu.com/link?url=whqbCegRZQsSTccYyuTdx3JumdN0qSFUFOo_xM_ESykWekftGjVFXAq55MMqjvQL0NG7iI1l6irIW_vdPN7h-K&wd=&eqid=d07979d2000631b10000000661443a3f" rel="external nofollow" ]').click()

2、driver.find_element_by_css_selector(value)

// 搜索百度使用f12定位到输入框的位置 <input id="kw" name="wd" class="s_ipt" value="" maxlength="255" autocomplete="off">

from selenium import webdriver driver = webdriver.Chrome() //打开谷歌 driver.get("www.baidu.com") //打开百度链接 //标签名及属性(含属性值)组合定位,方式有很多不一一举例 driver.find_element_by_css_selector('input[name="wd"]').send_keys("Selenium八大元素定位")

3、driver.find_element_by_id(value)

// 搜索百度使用f12定位到按钮的位置 <input type="submit" id="su" value="百度一下" class="bg s_btn">

// 使用id 定位到输入框的位置 from selenium import webdriver driver = webdriver.Chrome() //打开谷歌 driver.get("www.baidu.com") //打开百度链接 //通过id定位到按钮的位置并进行点击,click() 点击操作 driver.find_element_by_id("su").click()

4、driver.find_element_by_name(value)

// 搜索百度使用f12定位到输入框的位置 <input id="kw" name="wd" class="s_ipt" value="" maxlength="255" autocomplete="off">

// 使用name 定位到输入框的位置 from selenium import webdriver driver = webdriver.Chrome() //打开谷歌 driver.get("www.baidu.com") //打开百度链接 //通过id定位到输入框的位置,send_keys('') 往输入框填写内容 driver.find_element_by_name("wd").send_keys("Selenium八大元素定位")

5、driver.find_element_by_class_name(value)

// 搜索百度使用f12定位到输入框的位置 <input id="kw" name="wd" class="s_ipt" value="" maxlength="255" autocomplete="off">

// 使用name 定位到输入框的位置 from selenium import webdriver driver = webdriver.Chrome() //打开谷歌 driver.get("www.baidu.com") //打开百度链接 driver.find_element_by_class_name("s_ipt").send_keys("Selenium八大元素定位")

6、driver.find_element_by_tag_name(value)

// 使用标签名进行定位 from selenium import webdriver driver = webdriver.Chrome() //打开谷歌 driver.get("www.baidu.com") //打开百度链接 driver.find_element_by_tag_name("input")//通过标签名去定位,不推荐重复率很高

7、driver.find_element_by_link_text(value)

如何详细解析Python脚本中Selenium的Web元素定位方法?

// 搜索百度使用f12定位到按钮的位置 <a href="news.baidu.com" rel="external nofollow" rel="external nofollow" target="_blank" class="mnav c-font-normal c-color-t">新闻</a>

//此定位方式主要是对超链接进行定位,填写的内容是完整的超链接文字 from selenium import webdriver driver = webdriver.Chrome() //打开谷歌 driver.get("www.baidu.com") //打开百度链接 //此定位方式主要是对超链接进行定位,也就是html中的<a>标签,括号中填写的值是完整的超链接文字 driver.find_element_by_link_text("新闻").click()

8、driver.find_element_by_partial_link_text(value)

// 搜索百度使用f12定位到按钮的位置 <a href="news.baidu.com" rel="external nofollow" rel="external nofollow" target="_blank" class="mnav c-font-normal c-color-t">新闻</a>

//此定位方式主要是对超链接进行定位,填写的内容是部分的超链接文字 from selenium import webdriver driver = webdriver.Chrome() //打开谷歌 driver.get("www.baidu.com") //打开百度链接 //此定位方式主要是对超链接进行定位,也就是html中的<a>标签,括号中填写的值是部分的超链接文字 driver.find_element_by_partial_link_text("新").click()

以上就是Python脚本Selenium及页面Web元素定位详解的详细内容,更多关于脚本Selenium页面Web元素定位的资料请关注易盾网络其它相关文章!

本文共计1248个文字,预计阅读时间需要5分钟。

如何详细解析Python脚本中Selenium的Web元素定位方法?

目录:Selenium特点 + 八种定位方式

1.使用xpath定位:driver.find_element_by_xpath(value)

2.使用CSS选择器定位:driver.find_element_by_css_selector(value)

3.使用ID定位:driver.find_element_by_id(value)

4.使用name定位:driver.find_element_by_name(value)

5.使用class_name定位:driver.find_element_by_class_name(value)

6.使用link_text定位:driver.find_element_by_link_text(value)

7.使用partial_link_text定位:driver.find_element_by_partial_link_text(value)

8.使用tag_name定位:driver.find_element_by_tag_name(value)

目录
  • Selenium特点
  • 八种定位方式
    • 1、driver.find_element_by_xpath(value)
    • 2、driver.find_element_by_css_selector(value)
    • 3、driver.find_element_by_id(value)
    • 4、driver.find_element_by_name(value)
    • 5、driver.find_element_by_class_name(value)
    • 6、driver.find_element_by_tag_name(value)
    • 7、driver.find_element_by_link_text(value)
    • 8、driver.find_element_by_partial_link_text(value)

Selenium特点

开源,免费

多浏览器支持:firefox、chrome、IE

多平台支持:linux 、windows、MAC

多语言支持:java、python、ruby、php、C#、

对web页面有良好的支持

简单(API 简单)、灵活(用开发语言驱动)

支持分布式测试用例执行一、

八种定位方式

1、driver.find_element_by_xpath(value)

可以使用自带的copy xpath 进行定位
不推荐使用这种方法进行元素定位,后续开发修改代码路径发生变化就需要重新进行定位

// 使用xpath进行定位 from selenium import webdriver driver = webdriver.Chrome() //打开谷歌 driver.get("www.baidu.com") //打开百度链接 //通过id定位到输入框的位置,send_keys('') 往输入框填写内容 driver.find_element_by_name("wd").send_keys("Selenium八大元素定位") //通过id定位到按钮的位置并进行点击,click() 点击操作 driver.find_element_by_id("su").click() //通过xpath定位获取元素位置 driver.find_element_by_xpath('//*[@id="2"]/h3/a').click()

利用元素属性进行xpath定位

// 利用元素属性进行xpath定位 from selenium import webdriver driver = webdriver.Chrome() //打开谷歌 driver.get("www.baidu.com") //打开百度链接 //通过id定位到输入框的位置,send_keys('') 往输入框填写内容 driver.find_element_by_name("wd").send_keys("Selenium八大元素定位") //通过id定位到按钮的位置并进行点击,click() 点击操作 driver.find_element_by_id("su").click() //通过元素属性进行xpath定位 元素的值需要是唯一的 driver.find_element_by_xpath('//a[@href="www.baidu.com/link?url=whqbCegRZQsSTccYyuTdx3JumdN0qSFUFOo_xM_ESykWekftGjVFXAq55MMqjvQL0NG7iI1l6irIW_vdPN7h-K&wd=&eqid=d07979d2000631b10000000661443a3f" rel="external nofollow" ]').click()

2、driver.find_element_by_css_selector(value)

// 搜索百度使用f12定位到输入框的位置 <input id="kw" name="wd" class="s_ipt" value="" maxlength="255" autocomplete="off">

from selenium import webdriver driver = webdriver.Chrome() //打开谷歌 driver.get("www.baidu.com") //打开百度链接 //标签名及属性(含属性值)组合定位,方式有很多不一一举例 driver.find_element_by_css_selector('input[name="wd"]').send_keys("Selenium八大元素定位")

3、driver.find_element_by_id(value)

// 搜索百度使用f12定位到按钮的位置 <input type="submit" id="su" value="百度一下" class="bg s_btn">

// 使用id 定位到输入框的位置 from selenium import webdriver driver = webdriver.Chrome() //打开谷歌 driver.get("www.baidu.com") //打开百度链接 //通过id定位到按钮的位置并进行点击,click() 点击操作 driver.find_element_by_id("su").click()

4、driver.find_element_by_name(value)

// 搜索百度使用f12定位到输入框的位置 <input id="kw" name="wd" class="s_ipt" value="" maxlength="255" autocomplete="off">

// 使用name 定位到输入框的位置 from selenium import webdriver driver = webdriver.Chrome() //打开谷歌 driver.get("www.baidu.com") //打开百度链接 //通过id定位到输入框的位置,send_keys('') 往输入框填写内容 driver.find_element_by_name("wd").send_keys("Selenium八大元素定位")

5、driver.find_element_by_class_name(value)

// 搜索百度使用f12定位到输入框的位置 <input id="kw" name="wd" class="s_ipt" value="" maxlength="255" autocomplete="off">

// 使用name 定位到输入框的位置 from selenium import webdriver driver = webdriver.Chrome() //打开谷歌 driver.get("www.baidu.com") //打开百度链接 driver.find_element_by_class_name("s_ipt").send_keys("Selenium八大元素定位")

6、driver.find_element_by_tag_name(value)

// 使用标签名进行定位 from selenium import webdriver driver = webdriver.Chrome() //打开谷歌 driver.get("www.baidu.com") //打开百度链接 driver.find_element_by_tag_name("input")//通过标签名去定位,不推荐重复率很高

7、driver.find_element_by_link_text(value)

如何详细解析Python脚本中Selenium的Web元素定位方法?

// 搜索百度使用f12定位到按钮的位置 <a href="news.baidu.com" rel="external nofollow" rel="external nofollow" target="_blank" class="mnav c-font-normal c-color-t">新闻</a>

//此定位方式主要是对超链接进行定位,填写的内容是完整的超链接文字 from selenium import webdriver driver = webdriver.Chrome() //打开谷歌 driver.get("www.baidu.com") //打开百度链接 //此定位方式主要是对超链接进行定位,也就是html中的<a>标签,括号中填写的值是完整的超链接文字 driver.find_element_by_link_text("新闻").click()

8、driver.find_element_by_partial_link_text(value)

// 搜索百度使用f12定位到按钮的位置 <a href="news.baidu.com" rel="external nofollow" rel="external nofollow" target="_blank" class="mnav c-font-normal c-color-t">新闻</a>

//此定位方式主要是对超链接进行定位,填写的内容是部分的超链接文字 from selenium import webdriver driver = webdriver.Chrome() //打开谷歌 driver.get("www.baidu.com") //打开百度链接 //此定位方式主要是对超链接进行定位,也就是html中的<a>标签,括号中填写的值是部分的超链接文字 driver.find_element_by_partial_link_text("新").click()

以上就是Python脚本Selenium及页面Web元素定位详解的详细内容,更多关于脚本Selenium页面Web元素定位的资料请关注易盾网络其它相关文章!