osn-selenium 1.1.0__py3-none-any.whl → 1.2.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- osn_selenium/_decorators.py +57 -0
- osn_selenium/_trio_threads_helpers.py +157 -0
- osn_selenium/_typehints.py +1 -1
- osn_selenium/abstract/webdriver/blink/base.py +14 -0
- osn_selenium/abstract/webdriver/blink/lifecycle.py +8 -8
- osn_selenium/abstract/webdriver/core/base.py +0 -14
- osn_selenium/abstract/webdriver/core/capture.py +4 -3
- osn_selenium/abstract/webdriver/core/lifecycle.py +8 -8
- osn_selenium/abstract/webdriver/core/script.py +5 -4
- osn_selenium/abstract/webdriver/core/window.py +11 -11
- osn_selenium/dev_tools/_decorators.py +1 -42
- osn_selenium/dev_tools/_functions.py +2 -4
- osn_selenium/dev_tools/domains/__init__.py +1 -1
- osn_selenium/dev_tools/domains/fetch.py +5 -7
- osn_selenium/dev_tools/domains_default/fetch.py +1 -1
- osn_selenium/dev_tools/logger/main.py +9 -9
- osn_selenium/dev_tools/logger/target.py +7 -7
- osn_selenium/dev_tools/manager/base.py +10 -19
- osn_selenium/dev_tools/manager/lifecycle.py +83 -74
- osn_selenium/dev_tools/manager/logging.py +1 -1
- osn_selenium/dev_tools/manager/targets.py +13 -5
- osn_selenium/dev_tools/settings.py +4 -4
- osn_selenium/dev_tools/target/base.py +18 -11
- osn_selenium/dev_tools/target/discovery.py +1 -1
- osn_selenium/dev_tools/target/events.py +2 -2
- osn_selenium/dev_tools/target/fingerprint.py +1 -1
- osn_selenium/dev_tools/target/lifecycle.py +103 -43
- osn_selenium/dev_tools/target/logging.py +1 -1
- osn_selenium/exceptions/__init__.py +0 -1
- osn_selenium/exceptions/base.py +28 -1
- osn_selenium/exceptions/bidi_bridge.py +59 -0
- osn_selenium/exceptions/configuration.py +1 -8
- osn_selenium/exceptions/dependencies.py +2 -2
- osn_selenium/exceptions/devtools.py +9 -39
- osn_selenium/exceptions/experimental.py +26 -0
- osn_selenium/exceptions/flags.py +0 -2
- osn_selenium/exceptions/instance.py +1 -9
- osn_selenium/exceptions/javascript.py +0 -2
- osn_selenium/exceptions/logic.py +0 -2
- osn_selenium/exceptions/path.py +1 -9
- osn_selenium/exceptions/platform.py +0 -2
- osn_selenium/exceptions/protocol.py +0 -3
- osn_selenium/exceptions/webdriver.py +1 -7
- osn_selenium/exceptions/window.py +1 -8
- osn_selenium/executors/sync/cdp.py +0 -5
- osn_selenium/executors/trio_bidi/cdp.py +101 -0
- osn_selenium/executors/trio_bidi/javascript.py +101 -0
- osn_selenium/executors/trio_threads/cdp.py +0 -5
- osn_selenium/flags/base.py +6 -4
- osn_selenium/flags/blink.py +2 -2
- osn_selenium/flags/chrome.py +6 -6
- osn_selenium/flags/edge.py +6 -6
- osn_selenium/instances/convert.py +44 -3
- osn_selenium/instances/protocols.py +47 -1
- osn_selenium/instances/sync/browsing_context.py +2 -2
- osn_selenium/instances/sync/script.py +7 -2
- osn_selenium/instances/sync/web_element.py +1 -1
- osn_selenium/instances/trio_bidi/__init__.py +1 -0
- osn_selenium/instances/trio_bidi/shadow_root.py +180 -0
- osn_selenium/instances/trio_bidi/switch_to.py +143 -0
- osn_selenium/instances/trio_bidi/web_driver_wait.py +124 -0
- osn_selenium/instances/trio_bidi/web_element.py +239 -0
- osn_selenium/instances/trio_threads/browsing_context.py +2 -2
- osn_selenium/instances/trio_threads/fedcm.py +1 -1
- osn_selenium/instances/trio_threads/network.py +1 -1
- osn_selenium/instances/trio_threads/script.py +7 -2
- osn_selenium/instances/trio_threads/web_extension.py +1 -1
- osn_selenium/instances/unified/browsing_context.py +2 -2
- osn_selenium/instances/unified/script.py +2 -2
- osn_selenium/instances/unified/web_element.py +3 -5
- osn_selenium/javascript/fingerprint/__init__.py +2 -1
- osn_selenium/trio_bidi/__init__.py +1 -0
- osn_selenium/trio_bidi/_context_vars.py +12 -0
- osn_selenium/trio_bidi/_error_mappings.py +123 -0
- osn_selenium/trio_bidi/_error_redirects.py +194 -0
- osn_selenium/trio_bidi/_file_functions.py +28 -0
- osn_selenium/trio_bidi/_internal_mappings.py +10 -0
- osn_selenium/trio_bidi/_models.py +199 -0
- osn_selenium/trio_bidi/_typehints.py +20 -0
- osn_selenium/trio_bidi/connection_pool.py +587 -0
- osn_selenium/trio_bidi/mapping/__init__.py +1 -0
- osn_selenium/trio_bidi/mapping/_constants.py +14 -0
- osn_selenium/trio_bidi/mapping/_js_snippets.py +285 -0
- osn_selenium/trio_bidi/mapping/_utils.py +4 -0
- osn_selenium/trio_bidi/mapping/request_functions/__init__.py +87 -0
- osn_selenium/trio_bidi/mapping/request_functions/_alert.py +102 -0
- osn_selenium/trio_bidi/mapping/request_functions/_args_helpers.py +225 -0
- osn_selenium/trio_bidi/mapping/request_functions/_capture.py +71 -0
- osn_selenium/trio_bidi/mapping/request_functions/_cdp.py +40 -0
- osn_selenium/trio_bidi/mapping/request_functions/_element.py +55 -0
- osn_selenium/trio_bidi/mapping/request_functions/_file.py +32 -0
- osn_selenium/trio_bidi/mapping/request_functions/_navigation.py +147 -0
- osn_selenium/trio_bidi/mapping/request_functions/_script.py +85 -0
- osn_selenium/trio_bidi/mapping/request_functions/_shadow_root.py +65 -0
- osn_selenium/trio_bidi/mapping/request_functions/_switch_to.py +59 -0
- osn_selenium/trio_bidi/mapping/request_functions/_web_element.py +448 -0
- osn_selenium/trio_bidi/mapping/request_functions/_window.py +125 -0
- osn_selenium/trio_bidi/mapping/response_functions/__init__.py +86 -0
- osn_selenium/trio_bidi/mapping/response_functions/_alert.py +81 -0
- osn_selenium/trio_bidi/mapping/response_functions/_args_helpers.py +183 -0
- osn_selenium/trio_bidi/mapping/response_functions/_args_validators.py +153 -0
- osn_selenium/trio_bidi/mapping/response_functions/_capture.py +71 -0
- osn_selenium/trio_bidi/mapping/response_functions/_cdp.py +26 -0
- osn_selenium/trio_bidi/mapping/response_functions/_element.py +58 -0
- osn_selenium/trio_bidi/mapping/response_functions/_file.py +30 -0
- osn_selenium/trio_bidi/mapping/response_functions/_navigation.py +120 -0
- osn_selenium/trio_bidi/mapping/response_functions/_script.py +57 -0
- osn_selenium/trio_bidi/mapping/response_functions/_shadow_root.py +58 -0
- osn_selenium/trio_bidi/mapping/response_functions/_switch_to.py +57 -0
- osn_selenium/trio_bidi/mapping/response_functions/_web_element.py +368 -0
- osn_selenium/trio_bidi/mapping/response_functions/_window.py +119 -0
- osn_selenium/trio_bidi/mixin.py +186 -0
- osn_selenium/trio_bidi/remote_connection.py +164 -0
- osn_selenium/trio_threads_mixin.py +22 -68
- osn_selenium/webdrivers/_args_helpers.py +118 -5
- osn_selenium/webdrivers/_typehints.py +9 -3
- osn_selenium/webdrivers/protocols.py +81 -1
- osn_selenium/webdrivers/sync/blink/base.py +10 -0
- osn_selenium/webdrivers/sync/blink/lifecycle.py +26 -8
- osn_selenium/webdrivers/sync/chrome/lifecycle.py +23 -5
- osn_selenium/webdrivers/sync/chrome/settings.py +6 -1
- osn_selenium/webdrivers/sync/core/base.py +3 -11
- osn_selenium/webdrivers/sync/core/capture.py +3 -2
- osn_selenium/webdrivers/sync/core/file.py +3 -2
- osn_selenium/webdrivers/sync/core/lifecycle.py +44 -10
- osn_selenium/webdrivers/sync/core/script.py +3 -2
- osn_selenium/webdrivers/sync/core/window.py +3 -3
- osn_selenium/webdrivers/sync/edge/lifecycle.py +23 -5
- osn_selenium/webdrivers/sync/edge/settings.py +6 -1
- osn_selenium/webdrivers/sync/yandex/lifecycle.py +23 -5
- osn_selenium/webdrivers/sync/yandex/settings.py +6 -1
- osn_selenium/webdrivers/trio_bidi/__init__.py +1 -0
- osn_selenium/webdrivers/trio_bidi/blink/__init__.py +132 -0
- osn_selenium/webdrivers/trio_bidi/blink/base.py +167 -0
- osn_selenium/webdrivers/trio_bidi/blink/lifecycle.py +89 -0
- osn_selenium/webdrivers/trio_bidi/blink/settings.py +63 -0
- osn_selenium/webdrivers/trio_bidi/chrome/__init__.py +114 -0
- osn_selenium/webdrivers/trio_bidi/chrome/base.py +127 -0
- osn_selenium/webdrivers/trio_bidi/chrome/lifecycle.py +85 -0
- osn_selenium/webdrivers/trio_bidi/chrome/settings.py +63 -0
- osn_selenium/webdrivers/trio_bidi/core/__init__.py +95 -0
- osn_selenium/webdrivers/trio_bidi/core/actions.py +70 -0
- osn_selenium/webdrivers/trio_bidi/core/base.py +200 -0
- osn_selenium/webdrivers/trio_bidi/core/capture.py +39 -0
- osn_selenium/webdrivers/trio_bidi/core/devtools.py +49 -0
- osn_selenium/webdrivers/trio_bidi/core/element.py +64 -0
- osn_selenium/webdrivers/trio_bidi/core/lifecycle.py +135 -0
- osn_selenium/webdrivers/trio_bidi/core/navigation.py +37 -0
- osn_selenium/webdrivers/trio_bidi/core/script.py +56 -0
- osn_selenium/webdrivers/trio_bidi/core/settings.py +36 -0
- osn_selenium/webdrivers/trio_bidi/core/window.py +134 -0
- osn_selenium/webdrivers/trio_bidi/edge/__init__.py +114 -0
- osn_selenium/webdrivers/trio_bidi/edge/base.py +123 -0
- osn_selenium/webdrivers/trio_bidi/edge/lifecycle.py +85 -0
- osn_selenium/webdrivers/trio_bidi/edge/settings.py +63 -0
- osn_selenium/webdrivers/trio_bidi/yandex/__init__.py +114 -0
- osn_selenium/webdrivers/trio_bidi/yandex/base.py +120 -0
- osn_selenium/webdrivers/trio_bidi/yandex/lifecycle.py +85 -0
- osn_selenium/webdrivers/trio_bidi/yandex/settings.py +63 -0
- osn_selenium/webdrivers/trio_threads/blink/__init__.py +7 -1
- osn_selenium/webdrivers/trio_threads/blink/base.py +14 -0
- osn_selenium/webdrivers/trio_threads/blink/lifecycle.py +26 -8
- osn_selenium/webdrivers/trio_threads/chrome/lifecycle.py +23 -5
- osn_selenium/webdrivers/trio_threads/chrome/settings.py +1 -1
- osn_selenium/webdrivers/trio_threads/core/__init__.py +0 -10
- osn_selenium/webdrivers/trio_threads/core/actions.py +1 -1
- osn_selenium/webdrivers/trio_threads/core/auth.py +1 -1
- osn_selenium/webdrivers/trio_threads/core/base.py +4 -16
- osn_selenium/webdrivers/trio_threads/core/capture.py +3 -2
- osn_selenium/webdrivers/trio_threads/core/file.py +3 -2
- osn_selenium/webdrivers/trio_threads/core/lifecycle.py +44 -10
- osn_selenium/webdrivers/trio_threads/core/script.py +3 -2
- osn_selenium/webdrivers/trio_threads/core/settings.py +1 -1
- osn_selenium/webdrivers/trio_threads/core/storage.py +1 -1
- osn_selenium/webdrivers/trio_threads/core/timeouts.py +1 -1
- osn_selenium/webdrivers/trio_threads/core/window.py +4 -4
- osn_selenium/webdrivers/trio_threads/edge/lifecycle.py +23 -5
- osn_selenium/webdrivers/trio_threads/edge/settings.py +1 -1
- osn_selenium/webdrivers/trio_threads/yandex/lifecycle.py +23 -5
- osn_selenium/webdrivers/trio_threads/yandex/settings.py +1 -1
- osn_selenium/webdrivers/unified/blink/base.py +5 -1
- osn_selenium/webdrivers/unified/blink/lifecycle.py +4 -2
- osn_selenium/webdrivers/unified/chrome/base.py +5 -1
- osn_selenium/webdrivers/unified/core/auth.py +4 -2
- osn_selenium/webdrivers/unified/core/base.py +16 -10
- osn_selenium/webdrivers/unified/core/capture.py +3 -2
- osn_selenium/webdrivers/unified/core/components.py +12 -7
- osn_selenium/webdrivers/unified/core/devtools.py +2 -1
- osn_selenium/webdrivers/unified/core/file.py +3 -2
- osn_selenium/webdrivers/unified/core/lifecycle.py +5 -3
- osn_selenium/webdrivers/unified/core/script.py +5 -3
- osn_selenium/webdrivers/unified/core/storage.py +2 -1
- osn_selenium/webdrivers/unified/core/window.py +9 -8
- osn_selenium/webdrivers/unified/edge/base.py +5 -1
- osn_selenium/webdrivers/unified/yandex/base.py +5 -1
- {osn_selenium-1.1.0.dist-info → osn_selenium-1.2.0.dist-info}/METADATA +3 -2
- osn_selenium-1.2.0.dist-info/RECORD +480 -0
- osn_selenium/abstract/executors/cdp/__init__.py +0 -435
- osn_selenium/abstract/executors/cdp/accessibility.py +0 -62
- osn_selenium/abstract/executors/cdp/animation.py +0 -47
- osn_selenium/abstract/executors/cdp/audits.py +0 -39
- osn_selenium/abstract/executors/cdp/autofill.py +0 -34
- osn_selenium/abstract/executors/cdp/background_service.py +0 -22
- osn_selenium/abstract/executors/cdp/bluetooth_emulation.py +0 -95
- osn_selenium/abstract/executors/cdp/browser.py +0 -122
- osn_selenium/abstract/executors/cdp/cache_storage.py +0 -49
- osn_selenium/abstract/executors/cdp/cast.py +0 -31
- osn_selenium/abstract/executors/cdp/console.py +0 -18
- osn_selenium/abstract/executors/cdp/css.py +0 -197
- osn_selenium/abstract/executors/cdp/debugger.py +0 -198
- osn_selenium/abstract/executors/cdp/device_access.py +0 -22
- osn_selenium/abstract/executors/cdp/device_orientation.py +0 -14
- osn_selenium/abstract/executors/cdp/dom.py +0 -305
- osn_selenium/abstract/executors/cdp/dom_debugger.py +0 -57
- osn_selenium/abstract/executors/cdp/dom_snapshot.py +0 -42
- osn_selenium/abstract/executors/cdp/dom_storage.py +0 -31
- osn_selenium/abstract/executors/cdp/emulation.py +0 -259
- osn_selenium/abstract/executors/cdp/event_breakpoints.py +0 -18
- osn_selenium/abstract/executors/cdp/extensions.py +0 -31
- osn_selenium/abstract/executors/cdp/fed_cm.py +0 -35
- osn_selenium/abstract/executors/cdp/fetch.py +0 -76
- osn_selenium/abstract/executors/cdp/file_system.py +0 -11
- osn_selenium/abstract/executors/cdp/headless_experimental.py +0 -30
- osn_selenium/abstract/executors/cdp/heap_profiler.py +0 -73
- osn_selenium/abstract/executors/cdp/indexed_db.py +0 -99
- osn_selenium/abstract/executors/cdp/input.py +0 -158
- osn_selenium/abstract/executors/cdp/inspector.py +0 -14
- osn_selenium/abstract/executors/cdp/io.py +0 -24
- osn_selenium/abstract/executors/cdp/layer_tree.py +0 -61
- osn_selenium/abstract/executors/cdp/log.py +0 -27
- osn_selenium/abstract/executors/cdp/media.py +0 -14
- osn_selenium/abstract/executors/cdp/memory.py +0 -61
- osn_selenium/abstract/executors/cdp/network.py +0 -252
- osn_selenium/abstract/executors/cdp/overlay.py +0 -166
- osn_selenium/abstract/executors/cdp/page.py +0 -347
- osn_selenium/abstract/executors/cdp/performance.py +0 -28
- osn_selenium/abstract/executors/cdp/performance_timeline.py +0 -11
- osn_selenium/abstract/executors/cdp/preload.py +0 -14
- osn_selenium/abstract/executors/cdp/profiler.py +0 -54
- osn_selenium/abstract/executors/cdp/pwa.py +0 -46
- osn_selenium/abstract/executors/cdp/runtime.py +0 -176
- osn_selenium/abstract/executors/cdp/schema.py +0 -11
- osn_selenium/abstract/executors/cdp/security.py +0 -26
- osn_selenium/abstract/executors/cdp/service_worker.py +0 -54
- osn_selenium/abstract/executors/cdp/storage.py +0 -175
- osn_selenium/abstract/executors/cdp/system_info.py +0 -24
- osn_selenium/abstract/executors/cdp/target.py +0 -125
- osn_selenium/abstract/executors/cdp/tethering.py +0 -14
- osn_selenium/abstract/executors/cdp/tracing.py +0 -48
- osn_selenium/abstract/executors/cdp/web_audio.py +0 -19
- osn_selenium/abstract/executors/cdp/web_authn.py +0 -76
- osn_selenium/base_mixin.py +0 -122
- osn_selenium/executors/sync/cdp/__init__.py +0 -550
- osn_selenium/executors/sync/cdp/accessibility.py +0 -74
- osn_selenium/executors/sync/cdp/animation.py +0 -50
- osn_selenium/executors/sync/cdp/audits.py +0 -48
- osn_selenium/executors/sync/cdp/autofill.py +0 -39
- osn_selenium/executors/sync/cdp/background_service.py +0 -30
- osn_selenium/executors/sync/cdp/bluetooth_emulation.py +0 -101
- osn_selenium/executors/sync/cdp/browser.py +0 -131
- osn_selenium/executors/sync/cdp/cache_storage.py +0 -66
- osn_selenium/executors/sync/cdp/cast.py +0 -38
- osn_selenium/executors/sync/cdp/console.py +0 -24
- osn_selenium/executors/sync/cdp/css.py +0 -187
- osn_selenium/executors/sync/cdp/debugger.py +0 -206
- osn_selenium/executors/sync/cdp/device_access.py +0 -27
- osn_selenium/executors/sync/cdp/device_orientation.py +0 -24
- osn_selenium/executors/sync/cdp/dom.py +0 -310
- osn_selenium/executors/sync/cdp/dom_debugger.py +0 -56
- osn_selenium/executors/sync/cdp/dom_snapshot.py +0 -58
- osn_selenium/executors/sync/cdp/dom_storage.py +0 -38
- osn_selenium/executors/sync/cdp/emulation.py +0 -270
- osn_selenium/executors/sync/cdp/event_breakpoints.py +0 -27
- osn_selenium/executors/sync/cdp/extensions.py +0 -39
- osn_selenium/executors/sync/cdp/fed_cm.py +0 -45
- osn_selenium/executors/sync/cdp/fetch.py +0 -96
- osn_selenium/executors/sync/cdp/file_system.py +0 -18
- osn_selenium/executors/sync/cdp/headless_experimental.py +0 -44
- osn_selenium/executors/sync/cdp/heap_profiler.py +0 -89
- osn_selenium/executors/sync/cdp/indexed_db.py +0 -142
- osn_selenium/executors/sync/cdp/input.py +0 -233
- osn_selenium/executors/sync/cdp/inspector.py +0 -21
- osn_selenium/executors/sync/cdp/io.py +0 -33
- osn_selenium/executors/sync/cdp/layer_tree.py +0 -71
- osn_selenium/executors/sync/cdp/log.py +0 -35
- osn_selenium/executors/sync/cdp/media.py +0 -21
- osn_selenium/executors/sync/cdp/memory.py +0 -62
- osn_selenium/executors/sync/cdp/network.py +0 -287
- osn_selenium/executors/sync/cdp/overlay.py +0 -174
- osn_selenium/executors/sync/cdp/page.py +0 -365
- osn_selenium/executors/sync/cdp/performance.py +0 -33
- osn_selenium/executors/sync/cdp/performance_timeline.py +0 -26
- osn_selenium/executors/sync/cdp/preload.py +0 -21
- osn_selenium/executors/sync/cdp/profiler.py +0 -58
- osn_selenium/executors/sync/cdp/pwa.py +0 -55
- osn_selenium/executors/sync/cdp/runtime.py +0 -221
- osn_selenium/executors/sync/cdp/schema.py +0 -23
- osn_selenium/executors/sync/cdp/security.py +0 -30
- osn_selenium/executors/sync/cdp/service_worker.py +0 -56
- osn_selenium/executors/sync/cdp/storage.py +0 -151
- osn_selenium/executors/sync/cdp/system_info.py +0 -30
- osn_selenium/executors/sync/cdp/target.py +0 -147
- osn_selenium/executors/sync/cdp/tethering.py +0 -21
- osn_selenium/executors/sync/cdp/tracing.py +0 -62
- osn_selenium/executors/sync/cdp/web_audio.py +0 -24
- osn_selenium/executors/sync/cdp/web_authn.py +0 -82
- osn_selenium/executors/trio_threads/cdp/__init__.py +0 -771
- osn_selenium/executors/trio_threads/cdp/accessibility.py +0 -87
- osn_selenium/executors/trio_threads/cdp/animation.py +0 -63
- osn_selenium/executors/trio_threads/cdp/audits.py +0 -57
- osn_selenium/executors/trio_threads/cdp/autofill.py +0 -52
- osn_selenium/executors/trio_threads/cdp/background_service.py +0 -40
- osn_selenium/executors/trio_threads/cdp/bluetooth_emulation.py +0 -111
- osn_selenium/executors/trio_threads/cdp/browser.py +0 -140
- osn_selenium/executors/trio_threads/cdp/cache_storage.py +0 -79
- osn_selenium/executors/trio_threads/cdp/cast.py +0 -47
- osn_selenium/executors/trio_threads/cdp/console.py +0 -33
- osn_selenium/executors/trio_threads/cdp/css.py +0 -196
- osn_selenium/executors/trio_threads/cdp/debugger.py +0 -219
- osn_selenium/executors/trio_threads/cdp/device_access.py +0 -40
- osn_selenium/executors/trio_threads/cdp/device_orientation.py +0 -34
- osn_selenium/executors/trio_threads/cdp/dom.py +0 -319
- osn_selenium/executors/trio_threads/cdp/dom_debugger.py +0 -69
- osn_selenium/executors/trio_threads/cdp/dom_snapshot.py +0 -71
- osn_selenium/executors/trio_threads/cdp/dom_storage.py +0 -51
- osn_selenium/executors/trio_threads/cdp/emulation.py +0 -283
- osn_selenium/executors/trio_threads/cdp/event_breakpoints.py +0 -37
- osn_selenium/executors/trio_threads/cdp/extensions.py +0 -52
- osn_selenium/executors/trio_threads/cdp/fed_cm.py +0 -54
- osn_selenium/executors/trio_threads/cdp/fetch.py +0 -105
- osn_selenium/executors/trio_threads/cdp/file_system.py +0 -31
- osn_selenium/executors/trio_threads/cdp/headless_experimental.py +0 -54
- osn_selenium/executors/trio_threads/cdp/heap_profiler.py +0 -102
- osn_selenium/executors/trio_threads/cdp/indexed_db.py +0 -155
- osn_selenium/executors/trio_threads/cdp/input.py +0 -242
- osn_selenium/executors/trio_threads/cdp/inspector.py +0 -34
- osn_selenium/executors/trio_threads/cdp/io.py +0 -42
- osn_selenium/executors/trio_threads/cdp/layer_tree.py +0 -84
- osn_selenium/executors/trio_threads/cdp/log.py +0 -44
- osn_selenium/executors/trio_threads/cdp/media.py +0 -30
- osn_selenium/executors/trio_threads/cdp/memory.py +0 -71
- osn_selenium/executors/trio_threads/cdp/network.py +0 -296
- osn_selenium/executors/trio_threads/cdp/overlay.py +0 -183
- osn_selenium/executors/trio_threads/cdp/page.py +0 -374
- osn_selenium/executors/trio_threads/cdp/performance.py +0 -46
- osn_selenium/executors/trio_threads/cdp/performance_timeline.py +0 -36
- osn_selenium/executors/trio_threads/cdp/preload.py +0 -30
- osn_selenium/executors/trio_threads/cdp/profiler.py +0 -71
- osn_selenium/executors/trio_threads/cdp/pwa.py +0 -64
- osn_selenium/executors/trio_threads/cdp/runtime.py +0 -230
- osn_selenium/executors/trio_threads/cdp/schema.py +0 -32
- osn_selenium/executors/trio_threads/cdp/security.py +0 -43
- osn_selenium/executors/trio_threads/cdp/service_worker.py +0 -69
- osn_selenium/executors/trio_threads/cdp/storage.py +0 -162
- osn_selenium/executors/trio_threads/cdp/system_info.py +0 -43
- osn_selenium/executors/trio_threads/cdp/target.py +0 -156
- osn_selenium/executors/trio_threads/cdp/tethering.py +0 -34
- osn_selenium/executors/trio_threads/cdp/tracing.py +0 -71
- osn_selenium/executors/trio_threads/cdp/web_audio.py +0 -37
- osn_selenium/executors/trio_threads/cdp/web_authn.py +0 -95
- osn_selenium/executors/unified/cdp/accessibility.py +0 -81
- osn_selenium/executors/unified/cdp/animation.py +0 -50
- osn_selenium/executors/unified/cdp/audits.py +0 -45
- osn_selenium/executors/unified/cdp/autofill.py +0 -41
- osn_selenium/executors/unified/cdp/background_service.py +0 -24
- osn_selenium/executors/unified/cdp/bluetooth_emulation.py +0 -132
- osn_selenium/executors/unified/cdp/browser.py +0 -143
- osn_selenium/executors/unified/cdp/cache_storage.py +0 -69
- osn_selenium/executors/unified/cdp/cast.py +0 -32
- osn_selenium/executors/unified/cdp/console.py +0 -18
- osn_selenium/executors/unified/cdp/css.py +0 -237
- osn_selenium/executors/unified/cdp/debugger.py +0 -243
- osn_selenium/executors/unified/cdp/device_access.py +0 -21
- osn_selenium/executors/unified/cdp/device_orientation.py +0 -18
- osn_selenium/executors/unified/cdp/dom.py +0 -380
- osn_selenium/executors/unified/cdp/dom_debugger.py +0 -65
- osn_selenium/executors/unified/cdp/dom_snapshot.py +0 -58
- osn_selenium/executors/unified/cdp/dom_storage.py +0 -38
- osn_selenium/executors/unified/cdp/emulation.py +0 -312
- osn_selenium/executors/unified/cdp/event_breakpoints.py +0 -24
- osn_selenium/executors/unified/cdp/extensions.py +0 -45
- osn_selenium/executors/unified/cdp/fed_cm.py +0 -51
- osn_selenium/executors/unified/cdp/fetch.py +0 -111
- osn_selenium/executors/unified/cdp/file_system.py +0 -15
- osn_selenium/executors/unified/cdp/headless_experimental.py +0 -38
- osn_selenium/executors/unified/cdp/heap_profiler.py +0 -101
- osn_selenium/executors/unified/cdp/indexed_db.py +0 -157
- osn_selenium/executors/unified/cdp/input.py +0 -254
- osn_selenium/executors/unified/cdp/inspector.py +0 -15
- osn_selenium/executors/unified/cdp/io.py +0 -29
- osn_selenium/executors/unified/cdp/layer_tree.py +0 -71
- osn_selenium/executors/unified/cdp/log.py +0 -29
- osn_selenium/executors/unified/cdp/media.py +0 -15
- osn_selenium/executors/unified/cdp/memory.py +0 -59
- osn_selenium/executors/unified/cdp/network.py +0 -323
- osn_selenium/executors/unified/cdp/overlay.py +0 -209
- osn_selenium/executors/unified/cdp/page.py +0 -410
- osn_selenium/executors/unified/cdp/performance.py +0 -27
- osn_selenium/executors/unified/cdp/performance_timeline.py +0 -17
- osn_selenium/executors/unified/cdp/preload.py +0 -15
- osn_selenium/executors/unified/cdp/profiler.py +0 -55
- osn_selenium/executors/unified/cdp/pwa.py +0 -55
- osn_selenium/executors/unified/cdp/runtime.py +0 -245
- osn_selenium/executors/unified/cdp/schema.py +0 -17
- osn_selenium/executors/unified/cdp/security.py +0 -27
- osn_selenium/executors/unified/cdp/service_worker.py +0 -62
- osn_selenium/executors/unified/cdp/storage.py +0 -178
- osn_selenium/executors/unified/cdp/system_info.py +0 -24
- osn_selenium/executors/unified/cdp/target.py +0 -165
- osn_selenium/executors/unified/cdp/tethering.py +0 -15
- osn_selenium/executors/unified/cdp/tracing.py +0 -62
- osn_selenium/executors/unified/cdp/web_audio.py +0 -18
- osn_selenium/executors/unified/cdp/web_authn.py +0 -103
- osn_selenium-1.1.0.dist-info/RECORD +0 -615
- /osn_selenium/{dev_tools/_exception_helpers.py → _exception_helpers.py} +0 -0
- /osn_selenium/executors/{unified/cdp → trio_bidi}/__init__.py +0 -0
- {osn_selenium-1.1.0.dist-info → osn_selenium-1.2.0.dist-info}/WHEEL +0 -0
- {osn_selenium-1.1.0.dist-info → osn_selenium-1.2.0.dist-info}/top_level.txt +0 -0
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import trio
|
|
2
|
-
from typing import Any, Callable, Dict
|
|
3
|
-
from osn_selenium.base_mixin import TrioThreadMixin
|
|
4
|
-
from osn_selenium.executors.unified.cdp.media import (
|
|
5
|
-
UnifiedMediaCDPExecutor
|
|
6
|
-
)
|
|
7
|
-
from osn_selenium.abstract.executors.cdp.media import (
|
|
8
|
-
AbstractMediaCDPExecutor
|
|
9
|
-
)
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
__all__ = ["MediaCDPExecutor"]
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
class MediaCDPExecutor(UnifiedMediaCDPExecutor, TrioThreadMixin, AbstractMediaCDPExecutor):
|
|
16
|
-
def __init__(
|
|
17
|
-
self,
|
|
18
|
-
execute_function: Callable[[str, Dict[str, Any]], Any],
|
|
19
|
-
lock: trio.Lock,
|
|
20
|
-
limiter: trio.CapacityLimiter
|
|
21
|
-
):
|
|
22
|
-
UnifiedMediaCDPExecutor.__init__(self, execute_function=execute_function)
|
|
23
|
-
|
|
24
|
-
TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
|
|
25
|
-
|
|
26
|
-
async def disable(self) -> None:
|
|
27
|
-
return await self.sync_to_trio(sync_function=self._disable_impl)()
|
|
28
|
-
|
|
29
|
-
async def enable(self) -> None:
|
|
30
|
-
return await self.sync_to_trio(sync_function=self._enable_impl)()
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import trio
|
|
2
|
-
from osn_selenium.base_mixin import TrioThreadMixin
|
|
3
|
-
from typing import (
|
|
4
|
-
Any,
|
|
5
|
-
Callable,
|
|
6
|
-
Dict,
|
|
7
|
-
List,
|
|
8
|
-
Optional,
|
|
9
|
-
Tuple
|
|
10
|
-
)
|
|
11
|
-
from osn_selenium.executors.unified.cdp.memory import (
|
|
12
|
-
UnifiedMemoryCDPExecutor
|
|
13
|
-
)
|
|
14
|
-
from osn_selenium.abstract.executors.cdp.memory import (
|
|
15
|
-
AbstractMemoryCDPExecutor
|
|
16
|
-
)
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
__all__ = ["MemoryCDPExecutor"]
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
class MemoryCDPExecutor(UnifiedMemoryCDPExecutor, TrioThreadMixin, AbstractMemoryCDPExecutor):
|
|
23
|
-
def __init__(
|
|
24
|
-
self,
|
|
25
|
-
execute_function: Callable[[str, Dict[str, Any]], Any],
|
|
26
|
-
lock: trio.Lock,
|
|
27
|
-
limiter: trio.CapacityLimiter
|
|
28
|
-
):
|
|
29
|
-
UnifiedMemoryCDPExecutor.__init__(self, execute_function=execute_function)
|
|
30
|
-
|
|
31
|
-
TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
|
|
32
|
-
|
|
33
|
-
async def forcibly_purge_java_script_memory(self) -> None:
|
|
34
|
-
return await self.sync_to_trio(sync_function=self._forcibly_purge_java_script_memory_impl)()
|
|
35
|
-
|
|
36
|
-
async def get_all_time_sampling_profile(self) -> Dict[str, Any]:
|
|
37
|
-
return await self.sync_to_trio(sync_function=self._get_all_time_sampling_profile_impl)()
|
|
38
|
-
|
|
39
|
-
async def get_browser_sampling_profile(self) -> Dict[str, Any]:
|
|
40
|
-
return await self.sync_to_trio(sync_function=self._get_browser_sampling_profile_impl)()
|
|
41
|
-
|
|
42
|
-
async def get_dom_counters(self) -> Tuple[int, int, int]:
|
|
43
|
-
return await self.sync_to_trio(sync_function=self._get_dom_counters_impl)()
|
|
44
|
-
|
|
45
|
-
async def get_dom_counters_for_leak_detection(self) -> List[Dict[str, Any]]:
|
|
46
|
-
return await self.sync_to_trio(sync_function=self._get_dom_counters_for_leak_detection_impl)()
|
|
47
|
-
|
|
48
|
-
async def get_sampling_profile(self) -> Dict[str, Any]:
|
|
49
|
-
return await self.sync_to_trio(sync_function=self._get_sampling_profile_impl)()
|
|
50
|
-
|
|
51
|
-
async def prepare_for_leak_detection(self) -> None:
|
|
52
|
-
return await self.sync_to_trio(sync_function=self._prepare_for_leak_detection_impl)()
|
|
53
|
-
|
|
54
|
-
async def set_pressure_notifications_suppressed(self, suppressed: bool) -> None:
|
|
55
|
-
return await self.sync_to_trio(sync_function=self._set_pressure_notifications_suppressed_impl)(suppressed=suppressed)
|
|
56
|
-
|
|
57
|
-
async def simulate_pressure_notification(self, level: str) -> None:
|
|
58
|
-
return await self.sync_to_trio(sync_function=self._simulate_pressure_notification_impl)(level=level)
|
|
59
|
-
|
|
60
|
-
async def start_sampling(
|
|
61
|
-
self,
|
|
62
|
-
sampling_interval: Optional[int] = None,
|
|
63
|
-
suppress_randomness: Optional[bool] = None
|
|
64
|
-
) -> None:
|
|
65
|
-
return await self.sync_to_trio(sync_function=self._start_sampling_impl)(
|
|
66
|
-
sampling_interval=sampling_interval,
|
|
67
|
-
suppress_randomness=suppress_randomness
|
|
68
|
-
)
|
|
69
|
-
|
|
70
|
-
async def stop_sampling(self) -> None:
|
|
71
|
-
return await self.sync_to_trio(sync_function=self._stop_sampling_impl)()
|
|
@@ -1,296 +0,0 @@
|
|
|
1
|
-
import trio
|
|
2
|
-
from osn_selenium.base_mixin import TrioThreadMixin
|
|
3
|
-
from typing import (
|
|
4
|
-
Any,
|
|
5
|
-
Callable,
|
|
6
|
-
Dict,
|
|
7
|
-
List,
|
|
8
|
-
Optional,
|
|
9
|
-
Tuple
|
|
10
|
-
)
|
|
11
|
-
from osn_selenium.executors.unified.cdp.network import (
|
|
12
|
-
UnifiedNetworkCDPExecutor
|
|
13
|
-
)
|
|
14
|
-
from osn_selenium.abstract.executors.cdp.network import (
|
|
15
|
-
AbstractNetworkCDPExecutor
|
|
16
|
-
)
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
__all__ = ["NetworkCDPExecutor"]
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
class NetworkCDPExecutor(UnifiedNetworkCDPExecutor, TrioThreadMixin, AbstractNetworkCDPExecutor):
|
|
23
|
-
def __init__(
|
|
24
|
-
self,
|
|
25
|
-
execute_function: Callable[[str, Dict[str, Any]], Any],
|
|
26
|
-
lock: trio.Lock,
|
|
27
|
-
limiter: trio.CapacityLimiter
|
|
28
|
-
):
|
|
29
|
-
UnifiedNetworkCDPExecutor.__init__(self, execute_function=execute_function)
|
|
30
|
-
|
|
31
|
-
TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
|
|
32
|
-
|
|
33
|
-
async def can_clear_browser_cache(self) -> bool:
|
|
34
|
-
return await self.sync_to_trio(sync_function=self._can_clear_browser_cache_impl)()
|
|
35
|
-
|
|
36
|
-
async def can_clear_browser_cookies(self) -> bool:
|
|
37
|
-
return await self.sync_to_trio(sync_function=self._can_clear_browser_cookies_impl)()
|
|
38
|
-
|
|
39
|
-
async def can_emulate_network_conditions(self) -> bool:
|
|
40
|
-
return await self.sync_to_trio(sync_function=self._can_emulate_network_conditions_impl)()
|
|
41
|
-
|
|
42
|
-
async def clear_accepted_encodings_override(self) -> None:
|
|
43
|
-
return await self.sync_to_trio(sync_function=self._clear_accepted_encodings_override_impl)()
|
|
44
|
-
|
|
45
|
-
async def clear_browser_cache(self) -> None:
|
|
46
|
-
return await self.sync_to_trio(sync_function=self._clear_browser_cache_impl)()
|
|
47
|
-
|
|
48
|
-
async def clear_browser_cookies(self) -> None:
|
|
49
|
-
return await self.sync_to_trio(sync_function=self._clear_browser_cookies_impl)()
|
|
50
|
-
|
|
51
|
-
async def continue_intercepted_request(
|
|
52
|
-
self,
|
|
53
|
-
interception_id: str,
|
|
54
|
-
error_reason: Optional[str] = None,
|
|
55
|
-
raw_response: Optional[str] = None,
|
|
56
|
-
url: Optional[str] = None,
|
|
57
|
-
method: Optional[str] = None,
|
|
58
|
-
post_data: Optional[str] = None,
|
|
59
|
-
headers: Optional[Dict[Any, Any]] = None,
|
|
60
|
-
auth_challenge_response: Optional[Dict[str, Any]] = None
|
|
61
|
-
) -> None:
|
|
62
|
-
return await self.sync_to_trio(sync_function=self._continue_intercepted_request_impl)(
|
|
63
|
-
interception_id=interception_id,
|
|
64
|
-
error_reason=error_reason,
|
|
65
|
-
raw_response=raw_response,
|
|
66
|
-
url=url,
|
|
67
|
-
method=method,
|
|
68
|
-
post_data=post_data,
|
|
69
|
-
headers=headers,
|
|
70
|
-
auth_challenge_response=auth_challenge_response
|
|
71
|
-
)
|
|
72
|
-
|
|
73
|
-
async def delete_cookies(
|
|
74
|
-
self,
|
|
75
|
-
name: str,
|
|
76
|
-
url: Optional[str] = None,
|
|
77
|
-
domain: Optional[str] = None,
|
|
78
|
-
path: Optional[str] = None,
|
|
79
|
-
partition_key: Optional[Dict[str, Any]] = None
|
|
80
|
-
) -> None:
|
|
81
|
-
return await self.sync_to_trio(sync_function=self._delete_cookies_impl)(
|
|
82
|
-
name=name,
|
|
83
|
-
url=url,
|
|
84
|
-
domain=domain,
|
|
85
|
-
path=path,
|
|
86
|
-
partition_key=partition_key
|
|
87
|
-
)
|
|
88
|
-
|
|
89
|
-
async def disable(self) -> None:
|
|
90
|
-
return await self.sync_to_trio(sync_function=self._disable_impl)()
|
|
91
|
-
|
|
92
|
-
async def emulate_network_conditions(
|
|
93
|
-
self,
|
|
94
|
-
offline: bool,
|
|
95
|
-
latency: float,
|
|
96
|
-
download_throughput: float,
|
|
97
|
-
upload_throughput: float,
|
|
98
|
-
connection_type: Optional[str] = None,
|
|
99
|
-
packet_loss: Optional[float] = None,
|
|
100
|
-
packet_queue_length: Optional[int] = None,
|
|
101
|
-
packet_reordering: Optional[bool] = None
|
|
102
|
-
) -> None:
|
|
103
|
-
return await self.sync_to_trio(sync_function=self._emulate_network_conditions_impl)(
|
|
104
|
-
offline=offline,
|
|
105
|
-
latency=latency,
|
|
106
|
-
download_throughput=download_throughput,
|
|
107
|
-
upload_throughput=upload_throughput,
|
|
108
|
-
connection_type=connection_type,
|
|
109
|
-
packet_loss=packet_loss,
|
|
110
|
-
packet_queue_length=packet_queue_length,
|
|
111
|
-
packet_reordering=packet_reordering
|
|
112
|
-
)
|
|
113
|
-
|
|
114
|
-
async def emulate_network_conditions_by_rule(self, offline: bool, matched_network_conditions: List[Dict[str, Any]]) -> List[str]:
|
|
115
|
-
return await self.sync_to_trio(sync_function=self._emulate_network_conditions_by_rule_impl)(offline=offline, matched_network_conditions=matched_network_conditions)
|
|
116
|
-
|
|
117
|
-
async def enable(
|
|
118
|
-
self,
|
|
119
|
-
max_total_buffer_size: Optional[int] = None,
|
|
120
|
-
max_resource_buffer_size: Optional[int] = None,
|
|
121
|
-
max_post_data_size: Optional[int] = None,
|
|
122
|
-
report_direct_socket_traffic: Optional[bool] = None,
|
|
123
|
-
enable_durable_messages: Optional[bool] = None
|
|
124
|
-
) -> None:
|
|
125
|
-
return await self.sync_to_trio(sync_function=self._enable_impl)(
|
|
126
|
-
max_total_buffer_size=max_total_buffer_size,
|
|
127
|
-
max_resource_buffer_size=max_resource_buffer_size,
|
|
128
|
-
max_post_data_size=max_post_data_size,
|
|
129
|
-
report_direct_socket_traffic=report_direct_socket_traffic,
|
|
130
|
-
enable_durable_messages=enable_durable_messages
|
|
131
|
-
)
|
|
132
|
-
|
|
133
|
-
async def enable_reporting_api(self, enable: bool) -> None:
|
|
134
|
-
return await self.sync_to_trio(sync_function=self._enable_reporting_api_impl)(enable=enable)
|
|
135
|
-
|
|
136
|
-
async def get_all_cookies(self) -> List[Dict[str, Any]]:
|
|
137
|
-
return await self.sync_to_trio(sync_function=self._get_all_cookies_impl)()
|
|
138
|
-
|
|
139
|
-
async def get_certificate(self, origin: str) -> List[str]:
|
|
140
|
-
return await self.sync_to_trio(sync_function=self._get_certificate_impl)(origin=origin)
|
|
141
|
-
|
|
142
|
-
async def get_cookies(self, urls: Optional[List[str]] = None) -> List[Dict[str, Any]]:
|
|
143
|
-
return await self.sync_to_trio(sync_function=self._get_cookies_impl)(urls=urls)
|
|
144
|
-
|
|
145
|
-
async def get_ip_protection_proxy_status(self) -> str:
|
|
146
|
-
return await self.sync_to_trio(sync_function=self._get_ip_protection_proxy_status_impl)()
|
|
147
|
-
|
|
148
|
-
async def get_request_post_data(self, request_id: str) -> str:
|
|
149
|
-
return await self.sync_to_trio(sync_function=self._get_request_post_data_impl)(request_id=request_id)
|
|
150
|
-
|
|
151
|
-
async def get_response_body(self, request_id: str) -> Tuple[str, bool]:
|
|
152
|
-
return await self.sync_to_trio(sync_function=self._get_response_body_impl)(request_id=request_id)
|
|
153
|
-
|
|
154
|
-
async def get_response_body_for_interception(self, interception_id: str) -> Tuple[str, bool]:
|
|
155
|
-
return await self.sync_to_trio(sync_function=self._get_response_body_for_interception_impl)(interception_id=interception_id)
|
|
156
|
-
|
|
157
|
-
async def get_security_isolation_status(self, frame_id: Optional[str] = None) -> Dict[str, Any]:
|
|
158
|
-
return await self.sync_to_trio(sync_function=self._get_security_isolation_status_impl)(frame_id=frame_id)
|
|
159
|
-
|
|
160
|
-
async def load_network_resource(
|
|
161
|
-
self,
|
|
162
|
-
frame_id: Optional[str] = None,
|
|
163
|
-
url: str = None,
|
|
164
|
-
options: Dict[str, Any] = None
|
|
165
|
-
) -> Dict[str, Any]:
|
|
166
|
-
return await self.sync_to_trio(sync_function=self._load_network_resource_impl)(frame_id=frame_id, url=url, options=options)
|
|
167
|
-
|
|
168
|
-
async def override_network_state(
|
|
169
|
-
self,
|
|
170
|
-
offline: bool,
|
|
171
|
-
latency: float,
|
|
172
|
-
download_throughput: float,
|
|
173
|
-
upload_throughput: float,
|
|
174
|
-
connection_type: Optional[str] = None
|
|
175
|
-
) -> None:
|
|
176
|
-
return await self.sync_to_trio(sync_function=self._override_network_state_impl)(
|
|
177
|
-
offline=offline,
|
|
178
|
-
latency=latency,
|
|
179
|
-
download_throughput=download_throughput,
|
|
180
|
-
upload_throughput=upload_throughput,
|
|
181
|
-
connection_type=connection_type
|
|
182
|
-
)
|
|
183
|
-
|
|
184
|
-
async def replay_xhr(self, request_id: str) -> None:
|
|
185
|
-
return await self.sync_to_trio(sync_function=self._replay_xhr_impl)(request_id=request_id)
|
|
186
|
-
|
|
187
|
-
async def search_in_response_body(
|
|
188
|
-
self,
|
|
189
|
-
request_id: str,
|
|
190
|
-
query: str,
|
|
191
|
-
case_sensitive: Optional[bool] = None,
|
|
192
|
-
is_regex: Optional[bool] = None
|
|
193
|
-
) -> List[Dict[str, Any]]:
|
|
194
|
-
return await self.sync_to_trio(sync_function=self._search_in_response_body_impl)(
|
|
195
|
-
request_id=request_id,
|
|
196
|
-
query=query,
|
|
197
|
-
case_sensitive=case_sensitive,
|
|
198
|
-
is_regex=is_regex
|
|
199
|
-
)
|
|
200
|
-
|
|
201
|
-
async def set_accepted_encodings(self, encodings: List[str]) -> None:
|
|
202
|
-
return await self.sync_to_trio(sync_function=self._set_accepted_encodings_impl)(encodings=encodings)
|
|
203
|
-
|
|
204
|
-
async def set_attach_debug_stack(self, enabled: bool) -> None:
|
|
205
|
-
return await self.sync_to_trio(sync_function=self._set_attach_debug_stack_impl)(enabled=enabled)
|
|
206
|
-
|
|
207
|
-
async def set_blocked_ur_ls(
|
|
208
|
-
self,
|
|
209
|
-
url_patterns: Optional[List[Dict[str, Any]]] = None,
|
|
210
|
-
urls: Optional[List[str]] = None
|
|
211
|
-
) -> None:
|
|
212
|
-
return await self.sync_to_trio(sync_function=self._set_blocked_ur_ls_impl)(url_patterns=url_patterns, urls=urls)
|
|
213
|
-
|
|
214
|
-
async def set_bypass_service_worker(self, bypass: bool) -> None:
|
|
215
|
-
return await self.sync_to_trio(sync_function=self._set_bypass_service_worker_impl)(bypass=bypass)
|
|
216
|
-
|
|
217
|
-
async def set_cache_disabled(self, cache_disabled: bool) -> None:
|
|
218
|
-
return await self.sync_to_trio(sync_function=self._set_cache_disabled_impl)(cache_disabled=cache_disabled)
|
|
219
|
-
|
|
220
|
-
async def set_cookie(
|
|
221
|
-
self,
|
|
222
|
-
name: str,
|
|
223
|
-
value: str,
|
|
224
|
-
url: Optional[str] = None,
|
|
225
|
-
domain: Optional[str] = None,
|
|
226
|
-
path: Optional[str] = None,
|
|
227
|
-
secure: Optional[bool] = None,
|
|
228
|
-
http_only: Optional[bool] = None,
|
|
229
|
-
same_site: Optional[str] = None,
|
|
230
|
-
expires: Optional[float] = None,
|
|
231
|
-
priority: Optional[str] = None,
|
|
232
|
-
same_party: Optional[bool] = None,
|
|
233
|
-
source_scheme: Optional[str] = None,
|
|
234
|
-
source_port: Optional[int] = None,
|
|
235
|
-
partition_key: Optional[Dict[str, Any]] = None
|
|
236
|
-
) -> bool:
|
|
237
|
-
return await self.sync_to_trio(sync_function=self._set_cookie_impl)(
|
|
238
|
-
name=name,
|
|
239
|
-
value=value,
|
|
240
|
-
url=url,
|
|
241
|
-
domain=domain,
|
|
242
|
-
path=path,
|
|
243
|
-
secure=secure,
|
|
244
|
-
http_only=http_only,
|
|
245
|
-
same_site=same_site,
|
|
246
|
-
expires=expires,
|
|
247
|
-
priority=priority,
|
|
248
|
-
same_party=same_party,
|
|
249
|
-
source_scheme=source_scheme,
|
|
250
|
-
source_port=source_port,
|
|
251
|
-
partition_key=partition_key
|
|
252
|
-
)
|
|
253
|
-
|
|
254
|
-
async def set_cookie_controls(
|
|
255
|
-
self,
|
|
256
|
-
enable_third_party_cookie_restriction: bool,
|
|
257
|
-
disable_third_party_cookie_metadata: bool,
|
|
258
|
-
disable_third_party_cookie_heuristics: bool
|
|
259
|
-
) -> None:
|
|
260
|
-
return await self.sync_to_trio(sync_function=self._set_cookie_controls_impl)(
|
|
261
|
-
enable_third_party_cookie_restriction=enable_third_party_cookie_restriction,
|
|
262
|
-
disable_third_party_cookie_metadata=disable_third_party_cookie_metadata,
|
|
263
|
-
disable_third_party_cookie_heuristics=disable_third_party_cookie_heuristics
|
|
264
|
-
)
|
|
265
|
-
|
|
266
|
-
async def set_cookies(self, cookies: List[Dict[str, Any]]) -> None:
|
|
267
|
-
return await self.sync_to_trio(sync_function=self._set_cookies_impl)(cookies=cookies)
|
|
268
|
-
|
|
269
|
-
async def set_extra_http_headers(self, headers: Dict[Any, Any]) -> None:
|
|
270
|
-
return await self.sync_to_trio(sync_function=self._set_extra_http_headers_impl)(headers=headers)
|
|
271
|
-
|
|
272
|
-
async def set_ip_protection_proxy_bypass_enabled(self, enabled: bool) -> None:
|
|
273
|
-
return await self.sync_to_trio(sync_function=self._set_ip_protection_proxy_bypass_enabled_impl)(enabled=enabled)
|
|
274
|
-
|
|
275
|
-
async def set_request_interception(self, patterns: List[Dict[str, Any]]) -> None:
|
|
276
|
-
return await self.sync_to_trio(sync_function=self._set_request_interception_impl)(patterns=patterns)
|
|
277
|
-
|
|
278
|
-
async def set_user_agent_override(
|
|
279
|
-
self,
|
|
280
|
-
user_agent: str,
|
|
281
|
-
accept_language: Optional[str] = None,
|
|
282
|
-
platform: Optional[str] = None,
|
|
283
|
-
user_agent_metadata: Optional[Dict[str, Any]] = None
|
|
284
|
-
) -> None:
|
|
285
|
-
return await self.sync_to_trio(sync_function=self._set_user_agent_override_impl)(
|
|
286
|
-
user_agent=user_agent,
|
|
287
|
-
accept_language=accept_language,
|
|
288
|
-
platform=platform,
|
|
289
|
-
user_agent_metadata=user_agent_metadata
|
|
290
|
-
)
|
|
291
|
-
|
|
292
|
-
async def stream_resource_content(self, request_id: str) -> str:
|
|
293
|
-
return await self.sync_to_trio(sync_function=self._stream_resource_content_impl)(request_id=request_id)
|
|
294
|
-
|
|
295
|
-
async def take_response_body_for_interception_as_stream(self, interception_id: str) -> str:
|
|
296
|
-
return await self.sync_to_trio(sync_function=self._take_response_body_for_interception_as_stream_impl)(interception_id=interception_id)
|
|
@@ -1,183 +0,0 @@
|
|
|
1
|
-
import trio
|
|
2
|
-
from osn_selenium.base_mixin import TrioThreadMixin
|
|
3
|
-
from typing import (
|
|
4
|
-
Any,
|
|
5
|
-
Callable,
|
|
6
|
-
Dict,
|
|
7
|
-
List,
|
|
8
|
-
Optional
|
|
9
|
-
)
|
|
10
|
-
from osn_selenium.executors.unified.cdp.overlay import (
|
|
11
|
-
UnifiedOverlayCDPExecutor
|
|
12
|
-
)
|
|
13
|
-
from osn_selenium.abstract.executors.cdp.overlay import (
|
|
14
|
-
AbstractOverlayCDPExecutor
|
|
15
|
-
)
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
__all__ = ["OverlayCDPExecutor"]
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
class OverlayCDPExecutor(UnifiedOverlayCDPExecutor, TrioThreadMixin, AbstractOverlayCDPExecutor):
|
|
22
|
-
def __init__(
|
|
23
|
-
self,
|
|
24
|
-
execute_function: Callable[[str, Dict[str, Any]], Any],
|
|
25
|
-
lock: trio.Lock,
|
|
26
|
-
limiter: trio.CapacityLimiter
|
|
27
|
-
):
|
|
28
|
-
UnifiedOverlayCDPExecutor.__init__(self, execute_function=execute_function)
|
|
29
|
-
|
|
30
|
-
TrioThreadMixin.__init__(self, lock=lock, limiter=limiter)
|
|
31
|
-
|
|
32
|
-
async def disable(self) -> None:
|
|
33
|
-
return await self.sync_to_trio(sync_function=self._disable_impl)()
|
|
34
|
-
|
|
35
|
-
async def enable(self) -> None:
|
|
36
|
-
return await self.sync_to_trio(sync_function=self._enable_impl)()
|
|
37
|
-
|
|
38
|
-
async def get_grid_highlight_objects_for_test(self, node_ids: List[int]) -> Any:
|
|
39
|
-
return await self.sync_to_trio(sync_function=self._get_grid_highlight_objects_for_test_impl)(node_ids=node_ids)
|
|
40
|
-
|
|
41
|
-
async def get_highlight_object_for_test(
|
|
42
|
-
self,
|
|
43
|
-
node_id: int,
|
|
44
|
-
include_distance: Optional[bool] = None,
|
|
45
|
-
include_style: Optional[bool] = None,
|
|
46
|
-
color_format: Optional[str] = None,
|
|
47
|
-
show_accessibility_info: Optional[bool] = None
|
|
48
|
-
) -> Any:
|
|
49
|
-
return await self.sync_to_trio(sync_function=self._get_highlight_object_for_test_impl)(
|
|
50
|
-
node_id=node_id,
|
|
51
|
-
include_distance=include_distance,
|
|
52
|
-
include_style=include_style,
|
|
53
|
-
color_format=color_format,
|
|
54
|
-
show_accessibility_info=show_accessibility_info
|
|
55
|
-
)
|
|
56
|
-
|
|
57
|
-
async def get_source_order_highlight_object_for_test(self, node_id: int) -> Any:
|
|
58
|
-
return await self.sync_to_trio(sync_function=self._get_source_order_highlight_object_for_test_impl)(node_id=node_id)
|
|
59
|
-
|
|
60
|
-
async def hide_highlight(self) -> None:
|
|
61
|
-
return await self.sync_to_trio(sync_function=self._hide_highlight_impl)()
|
|
62
|
-
|
|
63
|
-
async def highlight_frame(
|
|
64
|
-
self,
|
|
65
|
-
frame_id: str,
|
|
66
|
-
content_color: Optional[Dict[str, Any]] = None,
|
|
67
|
-
content_outline_color: Optional[Dict[str, Any]] = None
|
|
68
|
-
) -> None:
|
|
69
|
-
return await self.sync_to_trio(sync_function=self._highlight_frame_impl)(
|
|
70
|
-
frame_id=frame_id,
|
|
71
|
-
content_color=content_color,
|
|
72
|
-
content_outline_color=content_outline_color
|
|
73
|
-
)
|
|
74
|
-
|
|
75
|
-
async def highlight_node(
|
|
76
|
-
self,
|
|
77
|
-
highlight_config: Dict[str, Any],
|
|
78
|
-
node_id: Optional[int] = None,
|
|
79
|
-
backend_node_id: Optional[int] = None,
|
|
80
|
-
object_id: Optional[str] = None,
|
|
81
|
-
selector: Optional[str] = None
|
|
82
|
-
) -> None:
|
|
83
|
-
return await self.sync_to_trio(sync_function=self._highlight_node_impl)(
|
|
84
|
-
highlight_config=highlight_config,
|
|
85
|
-
node_id=node_id,
|
|
86
|
-
backend_node_id=backend_node_id,
|
|
87
|
-
object_id=object_id,
|
|
88
|
-
selector=selector
|
|
89
|
-
)
|
|
90
|
-
|
|
91
|
-
async def highlight_quad(
|
|
92
|
-
self,
|
|
93
|
-
quad: List[float],
|
|
94
|
-
color: Optional[Dict[str, Any]] = None,
|
|
95
|
-
outline_color: Optional[Dict[str, Any]] = None
|
|
96
|
-
) -> None:
|
|
97
|
-
return await self.sync_to_trio(sync_function=self._highlight_quad_impl)(quad=quad, color=color, outline_color=outline_color)
|
|
98
|
-
|
|
99
|
-
async def highlight_rect(
|
|
100
|
-
self,
|
|
101
|
-
x: int,
|
|
102
|
-
y: int,
|
|
103
|
-
width: int,
|
|
104
|
-
height: int,
|
|
105
|
-
color: Optional[Dict[str, Any]] = None,
|
|
106
|
-
outline_color: Optional[Dict[str, Any]] = None
|
|
107
|
-
) -> None:
|
|
108
|
-
return await self.sync_to_trio(sync_function=self._highlight_rect_impl)(
|
|
109
|
-
x=x,
|
|
110
|
-
y=y,
|
|
111
|
-
width=width,
|
|
112
|
-
height=height,
|
|
113
|
-
color=color,
|
|
114
|
-
outline_color=outline_color
|
|
115
|
-
)
|
|
116
|
-
|
|
117
|
-
async def highlight_source_order(
|
|
118
|
-
self,
|
|
119
|
-
source_order_config: Dict[str, Any],
|
|
120
|
-
node_id: Optional[int] = None,
|
|
121
|
-
backend_node_id: Optional[int] = None,
|
|
122
|
-
object_id: Optional[str] = None
|
|
123
|
-
) -> None:
|
|
124
|
-
return await self.sync_to_trio(sync_function=self._highlight_source_order_impl)(
|
|
125
|
-
source_order_config=source_order_config,
|
|
126
|
-
node_id=node_id,
|
|
127
|
-
backend_node_id=backend_node_id,
|
|
128
|
-
object_id=object_id
|
|
129
|
-
)
|
|
130
|
-
|
|
131
|
-
async def set_inspect_mode(self, mode: str, highlight_config: Optional[Dict[str, Any]] = None) -> None:
|
|
132
|
-
return await self.sync_to_trio(sync_function=self._set_inspect_mode_impl)(mode=mode, highlight_config=highlight_config)
|
|
133
|
-
|
|
134
|
-
async def set_paused_in_debugger_message(self, message: Optional[str] = None) -> None:
|
|
135
|
-
return await self.sync_to_trio(sync_function=self._set_paused_in_debugger_message_impl)(message=message)
|
|
136
|
-
|
|
137
|
-
async def set_show_ad_highlights(self, show: bool) -> None:
|
|
138
|
-
return await self.sync_to_trio(sync_function=self._set_show_ad_highlights_impl)(show=show)
|
|
139
|
-
|
|
140
|
-
async def set_show_container_query_overlays(self, container_query_highlight_configs: List[Dict[str, Any]]) -> None:
|
|
141
|
-
return await self.sync_to_trio(sync_function=self._set_show_container_query_overlays_impl)(container_query_highlight_configs=container_query_highlight_configs)
|
|
142
|
-
|
|
143
|
-
async def set_show_debug_borders(self, show: bool) -> None:
|
|
144
|
-
return await self.sync_to_trio(sync_function=self._set_show_debug_borders_impl)(show=show)
|
|
145
|
-
|
|
146
|
-
async def set_show_flex_overlays(self, flex_node_highlight_configs: List[Dict[str, Any]]) -> None:
|
|
147
|
-
return await self.sync_to_trio(sync_function=self._set_show_flex_overlays_impl)(flex_node_highlight_configs=flex_node_highlight_configs)
|
|
148
|
-
|
|
149
|
-
async def set_show_fps_counter(self, show: bool) -> None:
|
|
150
|
-
return await self.sync_to_trio(sync_function=self._set_show_fps_counter_impl)(show=show)
|
|
151
|
-
|
|
152
|
-
async def set_show_grid_overlays(self, grid_node_highlight_configs: List[Dict[str, Any]]) -> None:
|
|
153
|
-
return await self.sync_to_trio(sync_function=self._set_show_grid_overlays_impl)(grid_node_highlight_configs=grid_node_highlight_configs)
|
|
154
|
-
|
|
155
|
-
async def set_show_hinge(self, hinge_config: Optional[Dict[str, Any]] = None) -> None:
|
|
156
|
-
return await self.sync_to_trio(sync_function=self._set_show_hinge_impl)(hinge_config=hinge_config)
|
|
157
|
-
|
|
158
|
-
async def set_show_hit_test_borders(self, show: bool) -> None:
|
|
159
|
-
return await self.sync_to_trio(sync_function=self._set_show_hit_test_borders_impl)(show=show)
|
|
160
|
-
|
|
161
|
-
async def set_show_isolated_elements(self, isolated_element_highlight_configs: List[Dict[str, Any]]) -> None:
|
|
162
|
-
return await self.sync_to_trio(sync_function=self._set_show_isolated_elements_impl)(isolated_element_highlight_configs=isolated_element_highlight_configs)
|
|
163
|
-
|
|
164
|
-
async def set_show_layout_shift_regions(self, result: bool) -> None:
|
|
165
|
-
return await self.sync_to_trio(sync_function=self._set_show_layout_shift_regions_impl)(result=result)
|
|
166
|
-
|
|
167
|
-
async def set_show_paint_rects(self, result: bool) -> None:
|
|
168
|
-
return await self.sync_to_trio(sync_function=self._set_show_paint_rects_impl)(result=result)
|
|
169
|
-
|
|
170
|
-
async def set_show_scroll_bottleneck_rects(self, show: bool) -> None:
|
|
171
|
-
return await self.sync_to_trio(sync_function=self._set_show_scroll_bottleneck_rects_impl)(show=show)
|
|
172
|
-
|
|
173
|
-
async def set_show_scroll_snap_overlays(self, scroll_snap_highlight_configs: List[Dict[str, Any]]) -> None:
|
|
174
|
-
return await self.sync_to_trio(sync_function=self._set_show_scroll_snap_overlays_impl)(scroll_snap_highlight_configs=scroll_snap_highlight_configs)
|
|
175
|
-
|
|
176
|
-
async def set_show_viewport_size_on_resize(self, show: bool) -> None:
|
|
177
|
-
return await self.sync_to_trio(sync_function=self._set_show_viewport_size_on_resize_impl)(show=show)
|
|
178
|
-
|
|
179
|
-
async def set_show_web_vitals(self, show: bool) -> None:
|
|
180
|
-
return await self.sync_to_trio(sync_function=self._set_show_web_vitals_impl)(show=show)
|
|
181
|
-
|
|
182
|
-
async def set_show_window_controls_overlay(self, window_controls_overlay_config: Optional[Dict[str, Any]] = None) -> None:
|
|
183
|
-
return await self.sync_to_trio(sync_function=self._set_show_window_controls_overlay_impl)(window_controls_overlay_config=window_controls_overlay_config)
|