启动浏览器支持chrome和firefox的headless无界面模式
This commit is contained in:
parent
81854fbdf9
commit
00baaabd6b
|
@ -6,7 +6,6 @@ from selenium.webdriver.support.wait import WebDriverWait
|
||||||
from selenium.webdriver.support.select import Select
|
from selenium.webdriver.support.select import Select
|
||||||
from selenium import webdriver
|
from selenium import webdriver
|
||||||
from selenium.webdriver.common.action_chains import ActionChains
|
from selenium.webdriver.common.action_chains import ActionChains
|
||||||
from selenium.webdriver.chrome.options import Options
|
|
||||||
import SimulatorUtil
|
import SimulatorUtil
|
||||||
# import paramiko
|
# import paramiko
|
||||||
import re
|
import re
|
||||||
|
@ -218,27 +217,50 @@ def action_openBrowser(action_object, step_desc, value, loc):
|
||||||
:return:
|
:return:
|
||||||
"""
|
"""
|
||||||
# if action_object[0].driver is None:
|
# if action_object[0].driver is None:
|
||||||
option = Options()
|
|
||||||
downloaddir = os.path.abspath(os.curdir)+"/data"
|
downloaddir = os.path.abspath(os.curdir)+"/data"
|
||||||
prefs = {"download.default_directory":downloaddir}
|
prefs = {"download.default_directory":downloaddir}
|
||||||
option.add_experimental_option("prefs",prefs)
|
|
||||||
option.add_argument('–no-sandbox')
|
|
||||||
# option.add_argument('-headless') # 不打开图形界面
|
# option.add_argument('-headless') # 不打开图形界面
|
||||||
option.add_argument('–disable-dev-shm-usage')
|
# option.add_argument('–disable-dev-shm-usage')
|
||||||
# action_object.driver = webdriver.Chrome(chrome_options=option)
|
# action_object.driver = webdriver.Chrome(chrome_options=option)
|
||||||
|
|
||||||
browser = value #传入浏览器对象
|
browser = value #传入浏览器对象
|
||||||
if action_object.driver == None:
|
if action_object.driver == None:
|
||||||
if browser.upper() == 'IE': action_object.driver = webdriver.Ie()
|
if browser.upper() == 'IE':
|
||||||
elif browser.upper() == 'CHROME': action_object.driver = webdriver.Chrome(chrome_options=option)
|
action_object.driver = webdriver.Ie()
|
||||||
elif browser.upper() == 'FIREFOX': action_object.driver = webdriver.Firefox()
|
elif browser.upper() == 'CHROME':
|
||||||
elif browser.upper() == 'SAFARI': action_object.driver = webdriver.Safari()
|
option = webdriver.ChromeOptions()
|
||||||
|
option.add_experimental_option("prefs", prefs)
|
||||||
|
option.add_argument('–no-sandbox')
|
||||||
|
action_object.driver = webdriver.Chrome(chrome_options=option)
|
||||||
|
elif browser.upper() == 'CHROME-HEADLESS':
|
||||||
|
option = webdriver.ChromeOptions()
|
||||||
|
option.add_experimental_option("prefs", prefs)
|
||||||
|
option.add_argument('–no-sandbox')
|
||||||
|
option.add_argument('-headless') # 不打开图形界面
|
||||||
|
action_object.driver = webdriver.Chrome(chrome_options=option)
|
||||||
|
elif browser.upper() == 'FIREFOX':
|
||||||
|
action_object.driver = webdriver.Firefox()
|
||||||
|
elif browser.upper() == 'FIREFOX-HEADLESS':
|
||||||
|
option = webdriver.FirefoxOptions()
|
||||||
|
option.set_headless()
|
||||||
|
action_object.driver = webdriver.Firefox(firefox_options=option)
|
||||||
|
elif browser.upper() == 'SAFARI':
|
||||||
|
action_object.driver = webdriver.Safari()
|
||||||
elif browser.upper() == 'NW':
|
elif browser.upper() == 'NW':
|
||||||
|
option = webdriver.ChromeOptions()
|
||||||
|
option.add_experimental_option("prefs", prefs)
|
||||||
|
option.add_argument('–no-sandbox')
|
||||||
chromedriver = os.path.abspath(os.curdir)+"\\nwjs-sdk-v0.19.3-win-x64\\chromedriver.exe"
|
chromedriver = os.path.abspath(os.curdir)+"\\nwjs-sdk-v0.19.3-win-x64\\chromedriver.exe"
|
||||||
action_object.driver = webdriver.Chrome(chromedriver, chrome_options=option)
|
action_object.driver = webdriver.Chrome(chromedriver, chrome_options=option)
|
||||||
js = "var gui=require(\"nw.gui\"); var win=gui.Window.get(); win.maximize()"
|
js = "var gui=require(\"nw.gui\"); var win=gui.Window.get(); win.maximize()"
|
||||||
action_object.driver.execute_script(js)
|
action_object.driver.execute_script(js)
|
||||||
else: action_object.driver = webdriver.Chrome(chrome_options=option)
|
else:
|
||||||
|
option = webdriver.ChromeOptions()
|
||||||
|
option.add_experimental_option("prefs", prefs)
|
||||||
|
option.add_argument('–no-sandbox')
|
||||||
|
action_object.driver = webdriver.Chrome(chrome_options=option)
|
||||||
if browser.upper() != 'NW':
|
if browser.upper() != 'NW':
|
||||||
action_object.driver.set_window_size(1600, 900)
|
action_object.driver.set_window_size(1600, 900)
|
||||||
action_object.driver.maximize_window()
|
action_object.driver.maximize_window()
|
||||||
|
|
Loading…
Reference in New Issue