浏览器兼容性及mitm析构方法
This commit is contained in:
parent
7135e10527
commit
81c53ba373
@ -13,10 +13,12 @@ class ChromeDriver(IDriver):
|
||||
options = Options()
|
||||
if config()['webdriver']['headless']:
|
||||
options.add_argument("--headless")
|
||||
options.add_argument("--window-size=1920,1080")
|
||||
options.add_argument('--proxy-server=%s:%s' % (config()['mitm']['host'], config()['mitm']['port']))
|
||||
options.add_argument('-ignore-certificate-errors')
|
||||
options.add_argument('-ignore -ssl-errors')
|
||||
options.add_argument('--ignore-certificate-errors')
|
||||
options.add_argument('--ignore-ssl-errors')
|
||||
options.add_argument('--incognito')
|
||||
options.add_experimental_option('excludeSwitches', ['ignore-certificate-errors'])
|
||||
if config()['webdriver']['chrome']['no_sandbox']:
|
||||
options.add_argument('--no-sandbox')
|
||||
proxy = Proxy()
|
||||
|
@ -13,9 +13,10 @@ class EdgeDriver(IDriver):
|
||||
options = Options()
|
||||
if config()['webdriver']['headless']:
|
||||
options.add_argument("--headless")
|
||||
options.add_argument("--window-size=1920,1080")
|
||||
options.add_argument('--proxy-server=%s:%s' % (config()['mitm']['host'], config()['mitm']['port']))
|
||||
options.add_argument('-ignore-certificate-errors')
|
||||
options.add_argument('-ignore -ssl-errors')
|
||||
options.add_argument('--ignore-certificate-errors')
|
||||
options.add_argument('--ignore-ssl-errors')
|
||||
options.add_argument('--incognito')
|
||||
proxy = Proxy()
|
||||
proxy.proxy_type = ProxyType.MANUAL
|
||||
|
@ -72,7 +72,8 @@ class BrowserManager():
|
||||
self._tabs.append(tab_info)
|
||||
|
||||
def terminate(self):
|
||||
del self._driver
|
||||
if self._driver:
|
||||
del self._driver
|
||||
|
||||
|
||||
class TabInfo(object):
|
||||
|
1
main.py
1
main.py
@ -16,6 +16,7 @@ if __name__ == '__main__':
|
||||
print("terminate")
|
||||
browser_manager.terminate()
|
||||
output_manager.terminate()
|
||||
proxy_manager.terminate()
|
||||
|
||||
|
||||
atexit.register(terminate)
|
||||
|
@ -30,6 +30,13 @@ class ProxyManager:
|
||||
)
|
||||
self._thread = None
|
||||
|
||||
def __del__(self):
|
||||
self.terminate()
|
||||
|
||||
def terminate(self):
|
||||
if self._mitm_instance:
|
||||
self._mitm_instance.shutdown()
|
||||
|
||||
def _load_addon(self):
|
||||
self._mitm_instance.addons.add(DanmakuWebsocketAddon(MESSAGE_QUEUE))
|
||||
|
||||
|
Reference in New Issue
Block a user