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

 

上一篇:快速指南:如何创建基于Python的爬虫


下一篇:使用python+Selenium动态爬取《率土之滨》藏宝阁账号信息