python selenium入门 元素定位

想要操作web页面上的元素,首先必须要定位到这个元素上。每个元素都有他各自的属性,比如id,name,class等,我们就通过这些属性来定位元素。

定位方法

webdriver提供的定位方法如下:

在这里插入图片描述

代码举例

# -*- coding: utf-8 -*-
# author:Gary

from selenium import webdriver

# 第一步:创建一个浏览器对象
browser = webdriver.Chrome()
# 第二步:使用浏览器对象对网址发起请求
browser.get("https://www.gary666.com")

# 测试代码
# 获取网页的源代码
print(browser.page_source)
# 获取此次请求的地址
# print(browser.current_url)
# 当前窗口对象
# print(browser.current_window_handle)
# 获取此次请求的cookie信息
# print(browser.get_cookies())
# 退出浏览器的命令,注释掉方便我们查看,正式运行一定要退出
# browser.quit()

# ************************selenium定位html元素************************#
'''
.text方法是获取这个html元素的内容
find_element是只返还一个
需要返回多个可以通过find_elements来获取
'''

'''
1.通过id定位,方法:find_element_by_id()
比如获取我博客的头部导航栏内容,观察html源代码可以发现,其id为topnav,id通常唯一,所以调用find_element_by_id()即可
'''
topnav = browser.find_element_by_id('topnav').text
print('topnav内容', topnav)

'''
1.通过class定位,方法:find_element_by_class_name()
比如获取我博客的logo内容,观察html源代码可以发现,其class为logo,而且只有一个class,所以只要调用然后调用find_element_by_class_name()即可,如果需要获取多个,调用find_elements_by_class_name()
'''
logo = browser.find_element_by_class_name('logo').text
print('logo内容', logo)
browser.quit()

TODO

  • 增加更多的方法示例
  • 对每个方法进行更多的解释

参考博文: https://blog.csdn.net/kelanmomo/article/details/82885954

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python Selenium是一个用于自动化Web浏览器的工具,它可以模拟用户在浏览器中的操作,例如点击、输入文本、获取元素等。Selenium 4.20.0是Selenium的一个版本,用于定位元素。 在Selenium中,元素定位是指通过一些特定的属性或者路径来找到网页中的元素。常用的元素定位方法有以下几种: 1. 通过ID定位:使用`find_element_by_id`方法,传入元素的ID属性值来定位元素。示例代码如下: ```python element = driver.find_element_by_id("element_id") ``` 2. 通过名称定位:使用`find_element_by_name`方法,传入元素的name属性值来定位元素。示例代码如下: ```python element = driver.find_element_by_name("element_name") ``` 3. 通过类名定位:使用`find_element_by_class_name`方法,传入元素的class属性值来定位元素。示例代码如下: ```python element = driver.find_element_by_class_name("element_class") ``` 4. 通过标签名定位:使用`find_element_by_tag_name`方法,传入元素的标签名来定位元素。示例代码如下: ```python element = driver.find_element_by_tag_name("tag_name") ``` 5. 通过链接文本定位:使用`find_element_by_link_text`方法,传入链接文本来定位链接元素。示例代码如下: ```python element = driver.find_element_by_link_text("link_text") ``` 6. 通过CSS选择器定位:使用`find_element_by_css_selector`方法,传入CSS选择器来定位元素。示例代码如下: ```python element = driver.find_element_by_css_selector("css_selector") ``` 7. 通过XPath定位:使用`find_element_by_xpath`方法,传入XPath表达式来定位元素。示例代码如下: ```python element = driver.find_element_by_xpath("xpath_expression") ``` 以上是一些常用的元素定位方法,你可以根据具体的需求选择合适的方法来定位元素

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值