zoukankan      html  css  js  c++  java
  • Python Selenium — 封装浏览器引擎类

    一、前言

      记录下封装浏览器引擎类的写法,本篇是参考以下2篇博客:

    • https://blog.csdn.net/u011541946/article/details/70171401
    • https://www.cnblogs.com/yudx/p/11864786.html

      封装浏览器引擎类后,可以通过更改一个字符串的值,利用if语句去判断和控制启动那个浏览器。这里我们暂时,支持两大浏览器(Chrome,Firefox)。

    这里有一个前提条件,在基础篇中,启动三大浏览器的driver文件,检查下你的Python安装路径下有没有这三个driver插件,如果没有,自行百度下。

    二、封装浏览器引擎

      在CommonMethod目录下新建browser_engine.py文件,代码如下:

    from selenium import webdriver
    
    class BrowserEngine(object):
        '''定义一个浏览器引擎,根据browser_type的值去,控制启动不同的浏览器,这里主要是firefox,chrome'''
        def __init__(self, driver):
            self.driver = driver
    
        browser_type = "Chrome"
    
        def get_browser(self):
            '''通过if语句,来控制初始化不同浏览器的启动,默认是启动firefox'''
            if self.browser_type == "Firefox":
                driver = webdriver.Firefox()
            elif self.browser_type == "Chrome":
                driver = webdriver.Chrome()
            else:
                driver = webdriver.Firefox()
            driver.maximize_window()
            driver.implicitly_wait(10)
            return driver

    三、测试调用

      在testcase目录下新建test.py文件,进行测试调用。

    from CommonMethod.browser_engine import BrowserEngine
    
    class TestB(object):
        def open_browser(self):
            browserengine = BrowserEngine(self)
            self.driver = browserengine.get_browser()
            self.driver.get("https://blog.csdn.net")
    t = TestB()
    t.open_browser()

    四、总结

      目前,自定义的浏览器引擎类到这里就封装好了,如需要打开不同浏览器,只需要手动修改引擎类中browser_type的值。

  • 相关阅读:
    Spark 分布式环境---slave节点无法启动(已解决)
    Hadoop 分布式环境slave节点重启忽然不好使了
    Spark 2.2.0 分布式集群环境搭建
    arm-linux-gcc
    VS+QT创建一个OpenCV应用
    QT安装和vs2015使用
    DE1_MSEL
    Hog实例
    resize函数
    Hog特征
  • 原文地址:https://www.cnblogs.com/Chilam007/p/15416453.html
Copyright © 2011-2022 走看看