python+selenium+一些方法的封装

from selenium.webdriver.chrome.webdriver import WebDriver


class BasePage:
    def __init__(self, driver: WebDriver, url=None, frame=None):
        self.driver = driver
        self.url = url
        self.frame = frame

    def open(self):
        """有url打开url,有frame切换frame"""
        if self.url:
            self.driver.get(self.url)
        if self.frame:
            self.driver.switch_to.default_content()
            self.driver.switch_to.frame(self.driver)

    def find(self, by, value, index=None):
    """封装一个text定位方法{value}注意前后的空格,如果by等于text则走value,by和Value会被重写,如果不是传啥还返回啥,所有此方法可以有很多if,
    2.先判断index 索引是否为空,不为空的话返回find_elements复数
    """
        if index is None:
            if by == "text":
                by = "xpath"
                value = f'//*[text()=" {value}  "]'
            return self.driver.find_element(by, value)
        else:
            if by == "text":
                by = "xpath"
                value = f'//*[text()=" {value}  "]'
        return self.driver.find_elements(by, value)[index]

    def click(self, by, value, index=None):
        self.find(by, value, index).click()

    def input_to(self, by, value, text):
        self.find(by, value).send_keys(text)


调用

import time
from pages.base_page import BasePage


class BaoBeiPage(BasePage):

    ordermang = ("text", "订单管理")
    baobeilist = ("link text", '列表')
    cleartime = ('xpath', "//span[contains(text(),'清空')]", 0)

    def enter_baobeilist(self):
        time.sleep(20)
        self.click(*self.ordermang)
        self.click(*self.baobeilist)

    def input_keywords(self):
        self.input_to(*self.keywords, '202111179494')

    def click_search(self):
        self.click(*self.search)

    def time_clear(self):
        self.click(*self.timeinput)
        self.click(*self.cleartime)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值