Exemplo n.º 1
0
 def get_options(self):
     if self.get_type() == 'firefox':
         options = FirefoxOptions()
         if self.get_args():
             for arg in self.get_args().split():
                 options.add_argument('--' + arg)
         if self.bin_path:
             options.binary_location(self.bin_path)
         if self.get_headless():
             options.headless = True
         if self.get_window_size():
             win_size = self.get_window_size().split(',')
             options.add_argument('--width=' + win_size[0])
             options.add_argument('--height=' + win_size[1])
         # Set download path
         options.set_preference('browser.download.folderList', 2)
         options.set_preference('browser.download.dir', get_download_path())
         options.set_preference('browser.download.manager.showWhenStarting',
                                False)
         options.set_preference('browser.helperApps.alwaysAsk.force', False)
         options.set_preference('browser.helperApps.neverAsk.saveToDisk',
                                "application/octet-stream")
         # options.set_preference('browser.helperApps.neverAsk.openFile', "application/octet-stream")
     elif self.get_type() == 'ie':
         options = IeOptions()
         options.ignore_protected_mode_settings = False
         options.require_window_focus = True
         options.native_events = False
         # proceed IE options here
     else:
         options = ChromeOptions()
         if self.get_args():
             for arg in self.get_args().split():
                 options.add_argument(arg)
         if self.bin_path:
             options.binary_location(self.bin_path)
         if self.get_headless():
             options.headless = True
         if self.get_window_size():
             options.add_argument('--window-size=' + self.get_window_size())
         # Set download path
         prefs = {}
         prefs["download.prompt_for_download"] = 0
         prefs["download.default_directory"] = get_download_path()
         options.add_experimental_option("prefs", prefs)
     return options