Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。他支持市场上绝对多数的浏览器。这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建回归测试检验软件功能和用户需求。支持自动录制动作和自动生成 .Net、Java、Perl等不同语言的测试脚本。
看了Selenium的简介有没有觉得它很牛呢?其实即使我们并非是做自动化测试的工作,学会这个软件也可以在生活中帮我们大忙。
上一篇文章写了根据id找元素,现在这一篇文章想写的是通过class属性找元素。
这里面通过class名字找属性有两个方法。
find_elements_by_class_name
find_element_by_class_name
我来直接来看能看出有什么区别呢?那就是element多看一个s和少了一个s的区别。
其实find_element_by_class_name是只返回符合条件的第一个元素,而find_elements_by_class_name的话是会返回所有符合条件的元素组成的列表。
我们来看看最常用的搜索引擎百度。直接f12进入查看代码
就以上一个例子看。我们找出控件的classname是s_ipt,只要替换掉就行了。
from selenium import webdriver
# 创建 WebDriver 对象,指明使用chrome浏览器驱动
driver = webdriver.Chrome(r'你自己的本地路径')
# 调用WebDriver 对象的get方法 可以让浏览器打开指定网址
driver.get('https://www.baidu.com')
# 根据id选择元素,返回的就是该元素对应的WebElement对象
element = driver.find_element_by_class_name('s_ipt')
# 通过该 WebElement对象,就可以对页面元素进行操作了
# 比如输入字符串到 这个 输入框里
element.send_keys('selenium怎么学\n')
这个是最基本,最简单的实例,有兴趣学selenium的话,可以关注公众号:诗一样的代码,留言给我,我教你系统地学。