Starts local session for a selenium server. Default case scenario.
(
proxy_address,
proxy_port,
proxy_username,
proxy_password,
headless_browser,
browser_profile_path,
disable_image_load,
page_delay,
geckodriver_path,
browser_executable_path,
logfolder,
logger,
geckodriver_log_level,
)
| 53 | |
| 54 | |
| 55 | def set_selenium_local_session( |
| 56 | proxy_address, |
| 57 | proxy_port, |
| 58 | proxy_username, |
| 59 | proxy_password, |
| 60 | headless_browser, |
| 61 | browser_profile_path, |
| 62 | disable_image_load, |
| 63 | page_delay, |
| 64 | geckodriver_path, |
| 65 | browser_executable_path, |
| 66 | logfolder, |
| 67 | logger, |
| 68 | geckodriver_log_level, |
| 69 | ): |
| 70 | """Starts local session for a selenium server. |
| 71 | Default case scenario.""" |
| 72 | |
| 73 | browser = None |
| 74 | err_msg = "" |
| 75 | |
| 76 | firefox_options = Firefox_Options() |
| 77 | |
| 78 | if headless_browser: |
| 79 | firefox_options.add_argument("-headless") |
| 80 | |
| 81 | if browser_profile_path is not None: |
| 82 | firefox_profile = webdriver.FirefoxProfile(browser_profile_path) |
| 83 | else: |
| 84 | firefox_profile = webdriver.FirefoxProfile() |
| 85 | |
| 86 | if browser_executable_path is not None: |
| 87 | firefox_options.binary = browser_executable_path |
| 88 | |
| 89 | # set "info" by default |
| 90 | # set "trace" for debubging, Development only |
| 91 | firefox_options.log.level = geckodriver_log_level |
| 92 | |
| 93 | # set English language |
| 94 | firefox_profile.set_preference("intl.accept_languages", "en-US") |
| 95 | firefox_profile.set_preference("general.useragent.override", Settings.user_agent) |
| 96 | |
| 97 | if disable_image_load: |
| 98 | # permissions.default.image = 2: Disable images load, |
| 99 | # this setting can improve pageload & save bandwidth |
| 100 | firefox_profile.set_preference("permissions.default.image", 2) |
| 101 | |
| 102 | if proxy_address and proxy_port: |
| 103 | firefox_profile.set_preference("network.proxy.type", 1) |
| 104 | firefox_profile.set_preference("network.proxy.http", proxy_address) |
| 105 | firefox_profile.set_preference("network.proxy.http_port", int(proxy_port)) |
| 106 | firefox_profile.set_preference("network.proxy.ssl", proxy_address) |
| 107 | firefox_profile.set_preference("network.proxy.ssl_port", int(proxy_port)) |
| 108 | |
| 109 | # mute audio while watching stories |
| 110 | firefox_profile.set_preference("media.volume_scale", "0.0") |
| 111 | |
| 112 | # prevent Hide Selenium Extension: error |
no test coverage detected