selenium进行自动化任务

有些任务,我们可能必须通过人工通过浏览器来进行测试,比如有些银行的app会校验证书,而且我们抓到的包是加密过的,那么我们就只能在app的页面上做测试,但是还是有一种办法进行自动化测试,就是selennium。

python + selennium网上大量的教程,就不详细说明了,主要是对于元素的抓取上,比较麻烦,在网上查找资料找到了一个chrome插件katalon,可以帮助我们查找元素。
直接看图,就可以看出来

111.gif
。。。调了半个小时gif图,还是没法播放,想看的另存为吧。。
然后我们可以根据这些元素直接进行编写,还有一种更方便的,因为这个插件已经帮我们写好了,虽然是python2的,但是也能用。

1
2
3
4
5
6
7
def test_(self):
driver = self.driver
driver.get("https://www.baidu.com/")
driver.find_element_by_id("kw").click()
driver.find_element_by_id("kw").clear()
driver.find_element_by_id("kw").send_keys("nihao")
driver.find_element_by_id("su").click()

我们把这个函数中的代码截出来,就可以进行自己想要的操作了,比如循环什么的。

1
2
3
4
5
6
7
8
9
10
11
12
# -*- coding: utf-8 -*-
import time
from selenium import webdriver

driver = webdriver.Chrome()
driver.get("https://www.baidu.com/")
test = ['222','333','444']
for i in test:
driver.find_element_by_id("kw").click()
driver.find_element_by_id("kw").clear()
driver.find_element_by_id("kw").send_keys(i)
driver.find_element_by_id("su").click()