从0开始python学习-21.selenium 元素的常见操作

复制代码
1. 输入内容:send_keys()
2. 点击(鼠标的左击):click()
3. 清除文本:clear()
4. 提交表单:submit()
5. 获取元素的大小:size  如果没有文本内容那么是空值
6. 获取元素的文本信息:text
7. 获取元素的属性:get_attribute()
8. 判断元素是否可见:is_display() 返回True/False
9. 判断元素是否可用:is_enable() 返回True/False
10.截图:get_screenshot_as_file() 或 save_screenshot()
python 复制代码
from time import sleep
from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()

url = "https://www.baidu.com/"

driver.get(url)

driver.maximize_window ()

# 输入框:<input id="kw" name="wd" class="s_ipt" value="" maxlength="255" autocomplete="off">
# 百度一下:<input type="submit" id="su" value="百度一下" class="bg s_btn">
# 输入内容:send_keys()
driver.find_element(By.ID, 'kw').send_keys('1111')
sleep(3)

# 点击(鼠标的左击):click()
driver.find_element(By.ID, 'su').click()
sleep(5)

# 清除文本:clear()
driver.find_element(By.ID, 'kw').clear()
sleep(3)

# 提交表单:submit()
driver.find_element(By.ID, 'kw').send_keys('2222')
driver.find_element(By.ID, 'kw').submit()
sleep(10)

# <a href="http://news.baidu.com" target="_blank" class="mnav c-font-normal c-color-t">新闻</a>
# xpath: //*[@id="s-top-left"]/a[1]

# 获取元素的大小:size
print(driver.find_element(By.XPATH, '//*[@id="s-top-left"]/a[1]').size)  # {'height': 23, 'width': 26}

# 获取元素的文本信息:text
print(driver.find_element(By.XPATH, '//*[@id="s-top-left"]/a[1]').text)  # 新闻

# 获取元素的内容/属性:get_attribute()
print(driver.find_element(By.XPATH, '//*[@id="s-top-left"]/a[1]').get_attribute('innerText'))  # 新闻
print(driver.find_element(By.XPATH, '//*[@id="s-top-left"]/a[1]').get_attribute('class'))  # mnav c-font-normal c-color-t

# 判断元素是否可见:is_display()
print(driver.find_element(By.XPATH, '//*[@id="s-top-left"]/a[1]').is_displayed())  # True

# 判断元素是否可用:is_enable()
print(driver.find_element(By.XPATH, '//*[@id="s-top-left"]/a[1]').is_enabled())  # True

# 截图:get_screenshot_as_file() 或 save_screenshot()
driver.get_screenshot_as_file('./1png')
driver.save_screenshot('./2.jpg')
sleep(2)

driver.quit()
相关推荐
长安——归故李1 分钟前
【C语言】成绩等级制
c语言·开发语言
黄金小码农5 分钟前
c# 2024/12/25 周三
开发语言·c#
锦亦之22336 分钟前
cesium入门学习二
学习·html
AI视觉网奇34 分钟前
Detected at node ‘truediv‘ defined at (most recent call last): Node: ‘truediv‘
人工智能·python·tensorflow
m0_7482561441 分钟前
前端 MYTED单篇TED词汇学习功能优化
前端·学习
忒可君1 小时前
C# winform 报错:类型“System.Int32”的对象无法转换为类型“System.Int16”。
java·开发语言
GuYue.bing1 小时前
网络下载ts流媒体
开发语言·python
IT古董1 小时前
【机器学习】机器学习的基本分类-半监督学习(Semi-supervised Learning)
学习·机器学习·分类·半监督学习
StringerChen1 小时前
Qt ui提升窗口的头文件找不到
开发语言·qt
牛顿喜欢吃苹果1 小时前
linux创建虚拟串口
python