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的值。

  • 相关阅读:
    MySql存储过程学习
    自己用C语言写的扫雷算法
    Spring学习——Hello World
    ICE Service使用方法简介
    DevExpress学习笔记(一)Ribbon
    DevExpress学习笔记(二)NavBarControl
    ORACLE DBLINK无法使用问题
    vbs脚本读写INI文件
    Python操作INI文件:configobj 更好
    个人发展的误区:越广越好,还是越深越好?
  • 原文地址:https://www.cnblogs.com/Chilam007/p/15416453.html
Copyright © 2011-2022 走看看