Commit Graph

418 Commits

Author SHA1 Message Date
Michael Mintz f3e8e45521 driver.uc_click(selector) needs a backup JS option 2023-10-27 03:25:38 -04:00
Michael Mintz f20ae06d71 Prevent various prompts from appearing 2023-10-20 15:35:37 -04:00
Michael Mintz 11be78556f Prevent the "Enhanced ad privacy" pop-up 2023-10-20 13:45:00 -04:00
Michael Mintz ad9faec443 Add "driver.uc_click(selector)" to use "element.uc_click()" 2023-10-19 13:35:21 -04:00
Michael Mintz b8847ce7d5 Do some refactoring 2023-10-19 12:33:27 -04:00
Michael Mintz 9445bb1dc4 Add UC Mode customization options 2023-10-13 14:34:46 -04:00
Michael Mintz 14e62c4aa6 Improve "driver.highlight(selector)" functionality 2023-10-13 14:28:13 -04:00
Michael Mintz f622897b24 Fix issue with mobile mode and user agents 2023-10-13 14:22:38 -04:00
Michael Mintz 547e617f5d Refactor UC Mode 2023-10-12 13:06:18 -04:00
Michael Mintz 3c1efe3788 Modernize Mobile Mode 2023-10-10 15:26:35 -04:00
Michael Mintz f3704a3542 Add more methods directly into the raw "driver" 2023-10-06 16:57:11 -04:00
Michael Mintz 8a463073d3 Refactor graphics library code 2023-10-06 16:28:15 -04:00
Michael Mintz ae4b33d51a Update driver options 2023-09-24 16:47:35 -04:00
Michael Mintz 8d18333cb5 Improve and add driver methods 2023-09-24 16:36:00 -04:00
Michael Mintz ecb23ad988 Add option: `--driver-version="keep"` 2023-09-20 18:11:18 -04:00
Michael Mintz c613b2d447 Make convenience updates to "driver.find_element()" 2023-09-20 17:48:53 -04:00
Michael Mintz 6f5257d22e Make improvements to UC Mode 2023-09-15 11:51:31 -04:00
Michael Mintz 9938d6d844 Refactor browser_launcher and UC Mode 2023-09-13 17:00:26 -04:00
Michael Mintz c9b895e6aa Update default Edge preferences 2023-09-11 12:04:27 -04:00
Michael Mintz 4e7b87f696 Fix issue with authenticated proxy and proxy_bypass_list 2023-09-11 12:03:20 -04:00
Michael Mintz 97fcf22023 Add a "sleep" method directly into "driver" instances 2023-09-10 18:59:42 -04:00
Michael Mintz 328e5c9f47 Fix issue with msedgedriver & Edge on Linux 2023-09-10 00:54:36 -04:00
Michael Mintz 8f740dfef4 Fix issue with msedgedriver on Linux 2023-09-09 23:38:05 -04:00
Michael Mintz 44ca569bf7 Add support methods into "driver" instances 2023-09-09 23:20:10 -04:00
Michael Mintz f693fd13cc Drop support for Python 3.6 and Opera 2023-09-01 18:36:15 -04:00
Michael Mintz 7e60e3f696 Refactor UC Mode 2023-08-31 01:42:51 -04:00
Michael Mintz 5d7d7bb312 Refactor and fix error-handling on Edge 2023-08-29 13:06:23 -04:00
Michael Mintz e364af451a Make improvements to the Driver Manager 2023-08-28 12:28:42 -04:00
Michael Mintz 471e7060ba More UC Mode refactoring 2023-08-23 02:44:24 -04:00
Michael Mintz 35b44d29c2 Improve UC Mode on Linux 2023-08-23 01:41:25 -04:00
Michael Mintz 96cd45bc4e Refactor driver settings 2023-08-21 23:06:21 -04:00
Michael Mintz e25d73faeb Update timing 2023-08-21 23:04:35 -04:00
Michael Mintz 0a3eddcf42 Optimize timeouts in requests 2023-08-15 21:58:01 -04:00
Michael Mintz afcc63ba7b Add "timeout" to "requests.get()" calls 2023-08-15 17:20:47 -04:00
Michael Mintz 3b1643be55 Update UC Mode 2023-08-13 18:45:33 -04:00
Michael Mintz d4355ed493 Fix issue that occurs if a driver path contains spaces 2023-08-13 18:34:03 -04:00
Michael Mintz b80614b9c9 Fix issue with proxies in UC Mode 2023-08-12 01:09:53 -04:00
Michael Mintz 1db866f789 Optimize driver settings 2023-08-05 15:18:06 -04:00
Michael Mintz 07703acb0a So some refactoring 2023-08-05 14:49:50 -04:00
Michael Mintz ab3b14986f Fix issue with old chromedriver versions 2023-08-05 14:44:54 -04:00
Michael Mintz a3b6d8e269 Add option to override the driver version used 2023-08-05 14:39:22 -04:00
Michael Mintz 84bdedfb2a Swap deprecated "log_path" with "log_output" 2023-08-01 15:54:34 -04:00
Michael Mintz 769cfe5991 Refactor Chrome options 2023-08-01 15:47:53 -04:00
Michael Mintz b6120ae9b9 Refactor UC Mode 2023-08-01 15:47:05 -04:00
Michael Mintz 7238659347 Refactor Chromium options 2023-07-31 15:05:27 -04:00
Michael Mintz 6c1c99d3f7 Update UC Mode 2023-07-31 15:00:21 -04:00
Michael Mintz 6f4059d9ea Add Dark Mode option 2023-07-31 14:58:18 -04:00
Michael Mintz e4f1d512c0 Refresh Chrome options 2023-07-31 02:20:53 -04:00
Michael Mintz ee01fbf6f8 Update UC Mode 2023-07-31 02:20:00 -04:00
Michael Mintz 86e0eef5a4 Update naming 2023-07-31 02:13:53 -04:00
Michael Mintz 862ac27d8a Fix issues with Edge version 115 on Linux 2023-07-31 02:11:38 -04:00
Michael Mintz f288aedb85 Fix an issue with Chrome 115 2023-07-19 22:07:27 -04:00
Michael Mintz 2e885c43b9 Improve undetected mode ("--uc") 2023-07-18 14:39:10 -04:00
Michael Mintz ea3788704c Refactor the code 2023-07-18 11:22:23 -04:00
Michael Mintz be477faa56 Prevent sites from detecting SeleniumBase ("--uc" mode) 2023-07-12 13:38:22 -04:00
Michael Mintz 7e2c566c18 Refactor Chromium options 2023-06-22 13:33:31 -04:00
Michael Mintz 175bb1a3bc Avoid Guest Mode on Edge if using a proxy with auth 2023-06-06 16:16:33 -04:00
Michael Mintz 8cdb1d901d Avoid notifications on Edge when possible 2023-06-06 15:55:01 -04:00
Michael Mintz 0881de9786 Add options for downloading drivers via proxy as needed 2023-04-20 23:18:03 -04:00
Michael Mintz 50430d600c Use Guest Mode by default for Edge tests on Windows 2023-04-15 13:21:30 -04:00
Michael Mintz 6e72fd3624 Fix issue with multithreaded tests in Remote Debug Mode 2023-04-10 23:44:35 -04:00
Michael Mintz 286569024f Add option to support multiple proxies with auth in parallel 2023-04-10 22:36:25 -04:00
Michael Mintz 082c692261 Fix an issue with the remote-debugging-port in UC Mode 2023-04-07 21:14:10 -04:00
Michael Mintz 7fe3306009 Fix bug with headless Firefox on Linux without Xvfb 2023-03-21 21:47:12 -04:00
TaylorMcGinnis 7192d4daa8
Set Edge options via Chrome options for Remote EdgeDriver 2023-03-11 09:06:55 -05:00
Michael Mintz 006f95785d Update Safari compatibility 2023-03-04 01:09:27 -05:00
Michael Mintz e5337159f6 Update default options for UC Mode on Linux 2023-02-22 00:21:56 -05:00
Michael Mintz 60404635bc Simplify options for Remote WebDriver usage with Selenium Grid 2023-02-17 22:06:10 -05:00
Michael Mintz e6d35b478e Refactoring 2023-02-08 22:37:26 -05:00
Michael Mintz 1bd434b381 Update UC Mode code 2023-02-06 00:53:53 -05:00
Michael Mintz e1e8590eb2 Update UC Mode 2023-02-03 23:16:24 -05:00
Michael Mintz 85123d3b6d Update Chromium settings 2023-02-03 01:19:05 -05:00
Michael Mintz 63c830ce22 Add option to choose the Chromium browser binary location 2023-01-27 19:16:28 -05:00
Michael Mintz 86273f441a Make general improvements to UC Mode 2023-01-25 21:04:33 -05:00
Michael Mintz e907c8cdaa Fix bug with headless UC Mode on Linux 2023-01-23 12:57:07 -05:00
Michael Mintz 0a4808fafb Add option to capture CDP events in UC Mode 2023-01-19 00:02:04 -05:00
Michael Mintz eefb5d4c67 Improve version-detection with Edge Driver Manager 2023-01-14 02:22:39 -05:00
Michael Mintz 9957f6be69 Improve anti-detection measures for Selenium bots 2023-01-14 02:13:59 -05:00
Michael Mintz e7342a412b Fix issue with the new headless mode 2023-01-14 02:08:00 -05:00
Michael Mintz 1949a1472a Improve prevention of automation-detection 2023-01-13 00:40:14 -05:00
Michael Mintz 63306d8392 When setting headless mode, don't use options.headless 2022-12-21 23:46:40 -05:00
Michael Mintz 5d80af5286 Update options 2022-12-01 16:10:12 -05:00
Michael Mintz 1a223c4724 Update ARM64-detection on Macs 2022-11-29 01:01:38 -05:00
Michael Mintz 7af84e626c Refactoring 2022-11-25 14:46:23 -05:00
Michael Mintz b8a0463f57 Fix issue with taking screenshots in headless mode 2022-11-23 22:32:36 -05:00
Michael Mintz ac0a7309b1 Better handling of some multithreaded tests 2022-11-23 16:54:18 -05:00
Michael Mintz 408e037497 Remove deprecated browser capabilities 2022-11-23 16:52:10 -05:00
Michael Mintz 4ea8680db2 Remove deprecated drivers 2022-11-18 14:17:09 -05:00
Michael Mintz 1d7fe915c8 Improve compatibility for M1 and M2 Macs 2022-11-09 00:56:10 -05:00
Michael Mintz 8ea3c4989c Fix proxy with auth 2022-11-07 13:47:42 -05:00
Michael Mintz f7e7668c46 Optimize proxy mode for undetectable-chromedriver mode 2022-11-05 00:00:35 -04:00
Michael Mintz 23c2a75ea6 Always subprocess undetectable-chromedriver when used 2022-11-04 23:50:30 -04:00
Michael Mintz 4324caebed Improve undetectable mode compatibility 2022-11-02 02:04:18 -04:00
Michael Mintz ae4df0e749 Improve browser compatibility 2022-11-02 02:02:18 -04:00
Michael Mintz c2f6b03db4 Handle UC Mode when used with incompatible modes 2022-10-29 21:50:50 -04:00
Michael Mintz 4a14bb3f9b Optimize Chromium options 2022-10-29 21:43:35 -04:00
Michael Mintz 3e651f1cae Prevent setting "user_data_dir" twice when using "uc" mode 2022-10-29 20:54:12 -04:00
Michael Mintz d4df607822 Add support for the "selenium-wire" library 2022-10-29 20:42:25 -04:00
Michael Mintz 349d6bfa80 Add option to enable WebGL and 3D APIs 2022-10-25 02:10:06 -04:00
Michael Mintz 893b129d29 Add support for a SeleniumBase Context Manager 2022-10-14 03:48:42 -04:00
Michael Mintz 17dae34c1b Add support for undetected-chromedriver as a subprocess 2022-10-14 03:39:53 -04:00
Michael Mintz 99b63cd6c7 Add option to disable JavaScript during tests 2022-10-06 01:24:09 -04:00
Michael Mintz 90ce85a7e2 Add support for beta builds of Chromium 2022-09-28 17:45:16 -04:00
Michael Mintz 02dfba778a Integrate Chromium's new headless mode into SeleniumBase 2022-09-25 23:19:01 -04:00
Michael Mintz 91ec281d19 Refactoring options ordering 2022-09-09 18:40:29 -04:00
Michael Mintz a455c48487 Allow setting user_data_dir with undetectable-chromedriver 2022-09-08 22:24:03 -04:00
Michael Mintz 0b4c960879 Update conditions for undetected-chromedriver options 2022-09-08 22:21:07 -04:00
Michael Mintz 9c19808470 Prevent detection by anti-bot services (with --uc) 2022-09-07 02:16:57 -04:00
Michael Mintz 0d270fe2c3 Fix issue with loading a Chrome extension dir on Windows 2022-09-06 16:52:06 -04:00
Michael Mintz ee5510a364 UC-Headless Mode: Try Xvfb on Linux; otherwise skip UC 2022-09-05 16:02:51 -04:00
Michael Mintz dea5672fc2 Update comments 2022-09-05 15:38:25 -04:00
Michael Mintz 0a3a392ef4 Refactor error-handling 2022-09-05 15:30:38 -04:00
Michael Mintz 5139e390f9 Add option "--uc" for using an undetectable chromedriver 2022-09-01 16:24:50 -04:00
Michael Mintz 235d9bd4fe Add option to change Chromium's "pageLoadStrategy" 2022-08-26 21:44:21 -04:00
Michael Mintz 021bcc02ab Improve reliability 2022-08-26 21:29:05 -04:00
Michael Mintz 6e76e1fb41 Handle cases where "w3c" must be explicitly set to True 2022-08-19 01:13:22 -04:00
Michael Mintz b58b4cd44b Skip setting the "w3c" option in browser_launcher 2022-08-17 01:52:06 -04:00
Michael Mintz b00f75bee8 os.path.join() should always be used when joining paths 2022-08-17 01:38:14 -04:00
Michael Mintz 66554d262f Change a variable name to prepare for the future 2022-08-11 20:21:31 -04:00
Taylor McGinnis e1def74369 Renamed variable to `extension_capabilities` to match W3C term. 2022-08-11 14:46:19 -07:00
Taylor McGinnis b640370c54 Handle custom desired browser capabilities that are passed in as string:string. This is the pattern for passing extra capabilities specific to a vendor. See https://www.w3.org/TR/webdriver1/#dfn-extension-capability 2022-08-11 13:47:00 -07:00
Michael Mintz a1046e33e0 Fix EdgeDriver Manager script from new updates 2022-08-05 18:25:40 -04:00
Michael Mintz c7addc1cf9 Fix intermittent Firefox issue 2022-07-17 08:03:24 -04:00
Michael Mintz c508f38d20 Refactoring 2022-07-16 14:37:16 -04:00
Michael Mintz 3a46d83537 Update Firefox error-handling 2022-07-16 14:36:31 -04:00
Michael Mintz f75cda68c6 Update default Firefox preferences 2022-07-16 14:35:22 -04:00
Michael Mintz 3ae728f243 Handle edge cases with EdgeDriver 2022-07-14 12:38:44 -04:00
Michael Mintz e6a5ec875e Improve error-handling for Firefox tests 2022-07-14 00:18:28 -04:00
Michael Mintz 5cd2e4ac0d Update Firefox preferences 2022-07-14 00:16:34 -04:00
Michael Mintz 07591a1bcf Add option to enable Chromium's "Do-Not-Track" feature 2022-07-08 16:38:15 -04:00
Michael Mintz 5a90a604a6 Perform Firefox optimizations 2022-06-30 16:42:17 -04:00
Michael Mintz 881c7bbbab Disable 3D APIs by default to speed up WebGL sites 2022-06-30 13:53:02 -04:00
Michael Mintz 8e97a8b277 Add option to set proxy settings via PAC URL 2022-06-28 21:33:10 -04:00
Michael Mintz 47df4a5c10 Update the default Mobile Mode device metrics 2022-06-07 23:28:33 -04:00
Michael Mintz d707826500 Make performance optimizations for driver downloads 2022-05-26 20:07:32 -04:00
Michael Mintz c483c59803 Prevent webdrivers from creating unnecessary log files 2022-05-13 17:56:18 -04:00
Michael Mintz 3a9b5f3f64 Update warning messages in browser_launcher 2022-05-13 17:51:51 -04:00
Michael Mintz bd374e5f14 Refactoring 2022-04-13 13:25:32 -04:00
Michael Mintz 9e53a488f1 Firefox: Retry if "Process unexpectedly closed" 2022-04-04 16:58:56 -04:00
Michael Mintz b8f66d72ad Update default Firefox preferences 2022-04-04 16:57:06 -04:00
Michael Mintz fd1ff0e491 Fix issue with using --firefox-pref="pref:value" 2022-04-04 16:55:56 -04:00
Michael Mintz b8068ca64a Initialize key variables to None 2022-02-09 14:37:17 -05:00
Simon K 2a0a7f83b2
Improve handling of desired capabilities in the remote instance 2022-02-09 13:44:34 -05:00
Michael Mintz 914aaa66b6 Allow more customizations for Grid capabilities 2022-02-01 00:48:49 -05:00
Michael Mintz 5690d42256 Improve logging 2022-01-27 01:34:16 -05:00
Michael Mintz 338f28d60b Add "--external-pdf" option to open PDFs externally 2022-01-23 23:38:46 -05:00
Michael Mintz 719ed7c5b1 Update parsing of browser capabilities 2021-12-24 17:25:14 -05:00
Michael Mintz e1f972a9c9 Improve browser-launching reliability for Chrome 2021-12-13 21:37:08 -05:00
Michael Mintz 450723359f Update default Firefox options (disable the silent updater) 2021-12-07 13:45:35 -05:00
Graham Hargreaves 825f86c513 Expose the proxy bypass option 2021-12-07 15:32:51 +00:00