📅  最后修改于: 2023-12-03 15:34:04.272000             🧑  作者: Mango
Selenium是一个用于Web应用程序测试的自动化工具。Selenium主要用于模拟用户在Web界面上的操作,自动化测试工具集中比较出名的一个框架。Selenium支持多种编程语言,包括Java、C#、Python等。本文将介绍Python中使用Selenium的拆解类。
在Python中使用Selenium需要先安装Selenium的Python库,可以使用pip进行安装。
!pip install selenium
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
class Sel(object):
def __init__(self, driver_path, element_time):
self.driver_path = driver_path
self.element_time = element_time
self.driver = None
def openChrome(self):
self.driver = webdriver.Chrome(executable_path=self.driver_path)
def closeChrome(self):
self.driver.quit()
def waitForElement(self, by, locator):
try:
element_present = EC.presence_of_element_located((by, locator))
WebDriverWait(self.driver, self.element_time).until(element_present)
except:
print("找不到元素 by="+str(by)+" locator="+locator)
def click(self, by, locator):
try:
self.waitForElement(by, locator)
self.driver.find_element(by, locator).click()
except:
print("点击失败 by="+str(by)+" locator="+locator)
def inputText(self, by, locator, text):
try:
self.waitForElement(by, locator)
self.driver.find_element(by, locator).send_keys(text)
except:
print("输入失败 by="+str(by)+" locator="+locator+" text="+text)
# 实例化Sel类
sel = Sel("chromedriver.exe", 30)
# 打开Chrome浏览器
sel.openChrome()
# 打开百度
sel.driver.get("https://www.baidu.com")
# 在搜索框中输入"Python Selenium 拆解类"
sel.inputText(By.ID, "kw", "Python Selenium 拆解类")
# 点击搜索按钮
sel.click(By.ID, "su")
# 关闭Chrome浏览器
sel.closeChrome()
程序将自动打开Chrome浏览器,在百度上输入"Python Selenium 拆解类"并搜索,然后自动关闭Chrome浏览器。
通过拆解类对Selenium进行封装,能够更加方便地使用Selenium进行自动化测试。拆解类将常用的操作进行了封装,能够提高自动化测试的效率。