操控元素常用方法

WebElement 中的常用方法

(1)clear():清除文本

(2)send_keys(value):模拟按键输入

(3)size:返回元素的尺寸

(4)text:获取元素的文本

(5)is_displayed():设置该元素是否用户可见

(6)click():单击元素

(7)submit():提交表单

(8)get_attribute('class'):获取元素属性

(9)quit():关闭浏览器

element = wd.find_element(By.ID, "input1")

element.clear() # 清除输入框已有的字符串
element.send_keys('天才九少') # 输入新字符串
element.click()  # 点击
print(element.text)  # 获取文本内容

 

获取元素属性

element = wd.find_element(By.ID, 'input_name')
print(element.get_attribute('class'))

 

submit():提交表单

有些搜索框不提供搜索按钮,而是通过按键盘上的回车键完成搜索内容的提交, 这时可以通过 submit()模拟

from selenium import webdriver
wd
= webdriver.Chrome() wd.get("https://www.baidu.com") search_text = wd.find_element_by_id('kw') search_text.send_keys('selenium') search.submit() wd.quit()

 

size:返回元素的尺寸

text:获取元素的文本

is_displayed():设置该元素是否用户可见

复制代码
from selenium import webdriver
wd
= webdriver.Chrome() wd.get("http://www.baidu.com")
# 获得输入框的尺寸 size = wd.find_element_by_id('kw').size print(size) # 返回百度页面底部备案信息 text = wd.find_element_by_id("cp").text print(text) # 返回元素的属性值,可以是 id、name、type 或其他任意属性 attribute = wd.find_element_by_id("kw").get_attribute('type') print(attribute) # 返回元素的结果是否可见,返回结果为 True 或 False result = wd.find_element_by_id("kw").is_displayed() print(result) wd.quit()
复制代码

运行结果如下

{'height': 22, 'width': 500}
©2019 Baidu 使用百度前必读 意见反馈 京 ICP 证 030173 号 京公网安备 11000002000001 号
text
True

 

获取整个元素对应的HTML

element.get_attribute('outerHTML')  # 获取整个元素对应的HTML文本内容
element.get_attribute('innerHTML')  # 获取某个元素 内部 的HTML文本内容

 

获取输入框里面的文字

对于input输入框的元素,要获取里面的输入文本,用text属性是不行的,可以使用 element.get attribute('value)

element = wd.find_element(By.ID, "input1")
print(element.get_attribute('value')) # 获取输入框中的文本

 

获取元素文本内容

有时候,元素的文本内容没有展示在界面上,或者没有完全完全展示在界面上,出现这种情况,可以尝试使用 

element.get_attribute('innerText')   # 只显示元素可见文本内容
element.get_attribute('textContent')  # 显示所有内容(包括display属性为none的部分)

 

 

参考学习:

白月黑羽:https://www.byhy.net/tut/auto/selenium/03/

虫师:Selenium3自动化测试实战

 

posted @   天才九少  阅读(41)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
点击右上角即可分享
微信分享提示