1、点击和输入
- 问题:通过前面的学习我们已经知道了如何定位到某个具体的元素,但是定位元素干嘛呢?
- 回答:定位到元素之后进行相关的操作呗,比如单击啦什么的
- 知识点:
- webdriver中常用的方法:
- clear(): 清除文本
- send_keys(): 模拟按键输入
- click(): 单击元素
from selenium import webdriver
import time
wd = webdriver.Chrome()
wd.get("https://www.jianshu.com/") # 打开简书
wd.find_element_by_class_name("search-input").send_keys("selenium") # 定位输入框并输入关键字
time.sleep(5) # 等待
wd.find_element_by_class_name("search-input").clear() # clear text
time.sleep(5) # 等待
wd.find_element_by_class_name("search-input").send_keys("jiujin") # 定位输入框并输入关键字
wd.find_element_by_class_name("search-btn").click() # 点击搜索
time.sleep(10) # 等待
wd.quit() # 关闭浏览器
2、提交
- 知识点:submit()-提交、回车
- 我们前面模拟查询动作用的是click方法,其实也可以用webDriver提供的submit方法进行表单提交
from selenium import webdriver
import time
wd = webdriver.Chrome()
wd.get("https://www.jianshu.com/") # 打开简书
wd.find_element_by_class_name("search-input").send_keys("jiujin") # 定位输入框并输入关键字
# wd.find_element_by_class_name("search-btn").click() # 点击搜索
wd.find_element_by_class_name("search-btn").submit() # 点击搜索
time.sleep(10) # 等待
wd.quit() # 关闭浏览器
3、其他常用方法
- 知识点:
- size:返回元素的尺寸
- text:获取元素的文本
- get_attribute(name):获得属性值
- is_displayed():设置该元素是否用户可见 T可见 F不可见
from selenium import webdriver
import time
wd = webdriver.Chrome()
wd.get("https://www.jianshu.com/") # 打开简书
wd.find_element_by_class_name("search-input").send_keys("selenium") # 定位输入框并输入关键字
size = wd.find_element_by_class_name("search-input").size # 尺寸
print(size)
text = wd.find_element_by_class_name("menu-text").text # 获取类名为menu-text的文本值
print(text)
attr = wd.find_element_by_class_name("search-input").get_attribute("type") # 获得类名为search-input的type属性值
print(attr)
displayed = wd.find_element_by_class_name("search-input").is_displayed() # 判断search-input是否用户可见
print(displayed)
wd.quit() # 关闭浏览器
{'height': 38, 'width': 190}
首页
text
True