BrowserManage简单封装管理层

This commit is contained in:
Jerry Yan 2022-06-05 09:37:57 +08:00
parent c10b1e114d
commit 8c10aa1848
2 changed files with 26 additions and 3 deletions

View File

@ -1,3 +1 @@
from browser.edge import EdgeDriver
driver = EdgeDriver()
from browser.manager import BrowserManager

25
browser/manager.py Normal file
View File

@ -0,0 +1,25 @@
from config.helper import config
from browser.edge import EdgeDriver
from browser.chrome import ChromeDriver
from typing import TYPE_CHECKING
if TYPE_CHECKING:
from typing import Type
from browser.IDriver import IDriver
class BrowserManager():
_mapping: "dict[str, Type[IDriver]]" = {
"chrome": ChromeDriver,
"edge": EdgeDriver
}
def __init__(self):
_config = config()["webdriver"]["use"]
if _config not in self._mapping:
raise Exception("不支持的浏览器")
self._driver = self._mapping[_config]()
@property
def driver(self):
return self._driver