osn-selenium 1.0.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/_base_models.py +41 -0
- osn_selenium/_cdp_import.py +253 -0
- osn_selenium/_decorators.py +57 -0
- osn_selenium/_trio_threads_helpers.py +157 -0
- osn_selenium/_typehints.py +1 -1
- osn_selenium/abstract/executors/cdp.py +63 -0
- 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/browsers_handler/models.py +1 -1
- osn_selenium/dev_tools/_decorators.py +19 -51
- osn_selenium/dev_tools/_functions.py +2 -4
- osn_selenium/dev_tools/_typehints.py +5 -2
- osn_selenium/dev_tools/_wrappers.py +0 -3
- osn_selenium/dev_tools/domains/__init__.py +2 -2
- osn_selenium/dev_tools/domains/abstract.py +1 -1
- osn_selenium/dev_tools/domains/fetch.py +6 -8
- osn_selenium/dev_tools/domains_default/fetch.py +2 -2
- osn_selenium/dev_tools/filters.py +1 -1
- osn_selenium/dev_tools/logger/main.py +9 -21
- osn_selenium/dev_tools/logger/models.py +1 -1
- osn_selenium/dev_tools/logger/target.py +49 -29
- osn_selenium/dev_tools/manager/base.py +10 -42
- osn_selenium/dev_tools/manager/lifecycle.py +84 -75
- osn_selenium/dev_tools/manager/logging.py +1 -1
- osn_selenium/dev_tools/manager/targets.py +13 -5
- osn_selenium/dev_tools/models.py +1 -1
- osn_selenium/dev_tools/settings.py +9 -5
- osn_selenium/dev_tools/target/base.py +30 -34
- 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 -38
- osn_selenium/dev_tools/target/logging.py +11 -3
- 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 +60 -0
- 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 +95 -0
- 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 +99 -0
- osn_selenium/executors/trio_threads/javascript.py +1 -1
- osn_selenium/executors/unified/javascript.py +0 -4
- osn_selenium/flags/base.py +7 -13
- osn_selenium/flags/blink.py +2 -8
- osn_selenium/flags/chrome.py +6 -6
- osn_selenium/flags/edge.py +6 -6
- osn_selenium/flags/models/base.py +4 -4
- osn_selenium/flags/models/blink.py +1 -1
- osn_selenium/flags/models/values.py +1 -1
- osn_selenium/instances/convert.py +44 -3
- osn_selenium/instances/protocols.py +47 -1
- osn_selenium/instances/sync/action_chains/__init__.py +6 -0
- osn_selenium/instances/sync/browsing_context.py +2 -2
- osn_selenium/instances/sync/script.py +7 -2
- osn_selenium/instances/sync/shadow_root.py +30 -8
- 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/action_chains/__init__.py +6 -0
- osn_selenium/instances/trio_threads/action_chains/base.py +1 -1
- osn_selenium/instances/trio_threads/alert.py +1 -1
- osn_selenium/instances/trio_threads/browser.py +1 -1
- osn_selenium/instances/trio_threads/browsing_context.py +3 -3
- osn_selenium/instances/trio_threads/dialog.py +1 -1
- osn_selenium/instances/trio_threads/fedcm.py +1 -1
- osn_selenium/instances/trio_threads/mobile.py +1 -1
- osn_selenium/instances/trio_threads/network.py +1 -1
- osn_selenium/instances/trio_threads/permissions.py +1 -1
- osn_selenium/instances/trio_threads/script.py +8 -3
- osn_selenium/instances/trio_threads/shadow_root.py +46 -15
- osn_selenium/instances/trio_threads/storage.py +1 -1
- osn_selenium/instances/trio_threads/switch_to.py +1 -1
- osn_selenium/instances/trio_threads/web_driver_wait.py +1 -1
- osn_selenium/instances/trio_threads/web_element.py +1 -1
- 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 +3 -2
- osn_selenium/javascript/fingerprint/registry/models.py +1 -1
- osn_selenium/javascript/fingerprint/spoof/core_rules.py +1 -1
- osn_selenium/javascript/fingerprint/spoof/noise.py +1 -1
- osn_selenium/javascript/models.py +1 -1
- osn_selenium/models.py +2 -47
- 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/{base_mixin.py → trio_threads_mixin.py} +31 -40
- osn_selenium/webdrivers/_args_helpers.py +120 -7
- osn_selenium/webdrivers/_bridges.py +2 -2
- osn_selenium/webdrivers/_executable_tables/models.py +1 -1
- osn_selenium/webdrivers/_typehints.py +9 -3
- osn_selenium/webdrivers/protocols.py +81 -1
- osn_selenium/webdrivers/sync/blink/__init__.py +11 -1
- osn_selenium/webdrivers/sync/blink/base.py +23 -1
- osn_selenium/webdrivers/sync/blink/lifecycle.py +26 -8
- osn_selenium/webdrivers/sync/chrome/__init__.py +36 -1
- osn_selenium/webdrivers/sync/chrome/base.py +13 -1
- osn_selenium/webdrivers/sync/chrome/lifecycle.py +23 -5
- osn_selenium/webdrivers/sync/chrome/settings.py +6 -1
- osn_selenium/webdrivers/sync/core/__init__.py +10 -1
- osn_selenium/webdrivers/sync/core/base.py +18 -18
- 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/__init__.py +36 -1
- osn_selenium/webdrivers/sync/edge/base.py +13 -1
- osn_selenium/webdrivers/sync/edge/lifecycle.py +23 -5
- osn_selenium/webdrivers/sync/edge/settings.py +6 -1
- osn_selenium/webdrivers/sync/yandex/__init__.py +36 -1
- osn_selenium/webdrivers/sync/yandex/base.py +13 -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 +18 -2
- osn_selenium/webdrivers/trio_threads/blink/base.py +25 -1
- osn_selenium/webdrivers/trio_threads/blink/casting.py +1 -1
- osn_selenium/webdrivers/trio_threads/blink/features.py +1 -1
- osn_selenium/webdrivers/trio_threads/blink/lifecycle.py +26 -8
- osn_selenium/webdrivers/trio_threads/blink/logging.py +1 -1
- osn_selenium/webdrivers/trio_threads/blink/network.py +1 -1
- osn_selenium/webdrivers/trio_threads/chrome/__init__.py +34 -1
- osn_selenium/webdrivers/trio_threads/chrome/base.py +14 -2
- 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 +10 -14
- 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 +18 -22
- osn_selenium/webdrivers/trio_threads/core/capture.py +4 -3
- osn_selenium/webdrivers/trio_threads/core/comonents.py +1 -1
- osn_selenium/webdrivers/trio_threads/core/devtools.py +1 -1
- osn_selenium/webdrivers/trio_threads/core/element.py +1 -1
- osn_selenium/webdrivers/trio_threads/core/file.py +5 -4
- osn_selenium/webdrivers/trio_threads/core/lifecycle.py +45 -11
- osn_selenium/webdrivers/trio_threads/core/navigation.py +1 -1
- osn_selenium/webdrivers/trio_threads/core/script.py +4 -3
- 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 +6 -6
- osn_selenium/webdrivers/trio_threads/edge/__init__.py +34 -1
- osn_selenium/webdrivers/trio_threads/edge/base.py +14 -2
- 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/__init__.py +34 -1
- osn_selenium/webdrivers/trio_threads/yandex/base.py +14 -2
- 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 +9 -1
- osn_selenium/webdrivers/unified/blink/lifecycle.py +4 -2
- osn_selenium/webdrivers/unified/chrome/base.py +9 -1
- osn_selenium/webdrivers/unified/core/auth.py +4 -2
- osn_selenium/webdrivers/unified/core/base.py +19 -6
- 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 +9 -1
- osn_selenium/webdrivers/unified/yandex/base.py +9 -1
- {osn_selenium-1.0.0.dist-info → osn_selenium-1.2.0.dist-info}/METADATA +24 -10
- osn_selenium-1.2.0.dist-info/RECORD +480 -0
- {osn_selenium-1.0.0.dist-info → osn_selenium-1.2.0.dist-info}/WHEEL +1 -1
- 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/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.0.0.dist-info/RECORD +0 -608
- /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.0.0.dist-info → osn_selenium-1.2.0.dist-info}/top_level.txt +0 -0
|
@@ -1,771 +0,0 @@
|
|
|
1
|
-
import trio
|
|
2
|
-
from osn_selenium.base_mixin import TrioThreadMixin
|
|
3
|
-
from typing import (
|
|
4
|
-
Any,
|
|
5
|
-
Callable,
|
|
6
|
-
Dict,
|
|
7
|
-
TYPE_CHECKING
|
|
8
|
-
)
|
|
9
|
-
from osn_selenium.abstract.executors.cdp import AbstractCDPExecutor
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
__all__ = ["CDPExecutor"]
|
|
13
|
-
|
|
14
|
-
if TYPE_CHECKING:
|
|
15
|
-
from osn_selenium.executors.trio_threads.cdp.accessibility import AccessibilityCDPExecutor
|
|
16
|
-
from osn_selenium.executors.trio_threads.cdp.animation import AnimationCDPExecutor
|
|
17
|
-
from osn_selenium.executors.trio_threads.cdp.audits import AuditsCDPExecutor
|
|
18
|
-
from osn_selenium.executors.trio_threads.cdp.autofill import AutofillCDPExecutor
|
|
19
|
-
from osn_selenium.executors.trio_threads.cdp.background_service import BackgroundServiceCDPExecutor
|
|
20
|
-
from osn_selenium.executors.trio_threads.cdp.bluetooth_emulation import BluetoothEmulationCDPExecutor
|
|
21
|
-
from osn_selenium.executors.trio_threads.cdp.browser import BrowserCDPExecutor
|
|
22
|
-
from osn_selenium.executors.trio_threads.cdp.css import CssCDPExecutor
|
|
23
|
-
from osn_selenium.executors.trio_threads.cdp.cache_storage import CacheStorageCDPExecutor
|
|
24
|
-
from osn_selenium.executors.trio_threads.cdp.cast import CastCDPExecutor
|
|
25
|
-
from osn_selenium.executors.trio_threads.cdp.console import ConsoleCDPExecutor
|
|
26
|
-
from osn_selenium.executors.trio_threads.cdp.dom import DomCDPExecutor
|
|
27
|
-
from osn_selenium.executors.trio_threads.cdp.dom_debugger import DomDebuggerCDPExecutor
|
|
28
|
-
from osn_selenium.executors.trio_threads.cdp.dom_snapshot import DomSnapshotCDPExecutor
|
|
29
|
-
from osn_selenium.executors.trio_threads.cdp.dom_storage import DomStorageCDPExecutor
|
|
30
|
-
from osn_selenium.executors.trio_threads.cdp.debugger import DebuggerCDPExecutor
|
|
31
|
-
from osn_selenium.executors.trio_threads.cdp.device_access import DeviceAccessCDPExecutor
|
|
32
|
-
from osn_selenium.executors.trio_threads.cdp.device_orientation import DeviceOrientationCDPExecutor
|
|
33
|
-
from osn_selenium.executors.trio_threads.cdp.emulation import EmulationCDPExecutor
|
|
34
|
-
from osn_selenium.executors.trio_threads.cdp.event_breakpoints import EventBreakpointsCDPExecutor
|
|
35
|
-
from osn_selenium.executors.trio_threads.cdp.extensions import ExtensionsCDPExecutor
|
|
36
|
-
from osn_selenium.executors.trio_threads.cdp.fed_cm import FedCmCDPExecutor
|
|
37
|
-
from osn_selenium.executors.trio_threads.cdp.fetch import FetchCDPExecutor
|
|
38
|
-
from osn_selenium.executors.trio_threads.cdp.file_system import FileSystemCDPExecutor
|
|
39
|
-
from osn_selenium.executors.trio_threads.cdp.headless_experimental import HeadlessExperimentalCDPExecutor
|
|
40
|
-
from osn_selenium.executors.trio_threads.cdp.heap_profiler import HeapProfilerCDPExecutor
|
|
41
|
-
from osn_selenium.executors.trio_threads.cdp.io import IoCDPExecutor
|
|
42
|
-
from osn_selenium.executors.trio_threads.cdp.indexed_db import IndexedDbCDPExecutor
|
|
43
|
-
from osn_selenium.executors.trio_threads.cdp.input import InputCDPExecutor
|
|
44
|
-
from osn_selenium.executors.trio_threads.cdp.inspector import InspectorCDPExecutor
|
|
45
|
-
from osn_selenium.executors.trio_threads.cdp.layer_tree import LayerTreeCDPExecutor
|
|
46
|
-
from osn_selenium.executors.trio_threads.cdp.log import LogCDPExecutor
|
|
47
|
-
from osn_selenium.executors.trio_threads.cdp.media import MediaCDPExecutor
|
|
48
|
-
from osn_selenium.executors.trio_threads.cdp.memory import MemoryCDPExecutor
|
|
49
|
-
from osn_selenium.executors.trio_threads.cdp.network import NetworkCDPExecutor
|
|
50
|
-
from osn_selenium.executors.trio_threads.cdp.overlay import OverlayCDPExecutor
|
|
51
|
-
from osn_selenium.executors.trio_threads.cdp.pwa import PwaCDPExecutor
|
|
52
|
-
from osn_selenium.executors.trio_threads.cdp.page import PageCDPExecutor
|
|
53
|
-
from osn_selenium.executors.trio_threads.cdp.performance import PerformanceCDPExecutor
|
|
54
|
-
from osn_selenium.executors.trio_threads.cdp.performance_timeline import PerformanceTimelineCDPExecutor
|
|
55
|
-
from osn_selenium.executors.trio_threads.cdp.preload import PreloadCDPExecutor
|
|
56
|
-
from osn_selenium.executors.trio_threads.cdp.profiler import ProfilerCDPExecutor
|
|
57
|
-
from osn_selenium.executors.trio_threads.cdp.runtime import RuntimeCDPExecutor
|
|
58
|
-
from osn_selenium.executors.trio_threads.cdp.schema import SchemaCDPExecutor
|
|
59
|
-
from osn_selenium.executors.trio_threads.cdp.security import SecurityCDPExecutor
|
|
60
|
-
from osn_selenium.executors.trio_threads.cdp.service_worker import ServiceWorkerCDPExecutor
|
|
61
|
-
from osn_selenium.executors.trio_threads.cdp.storage import StorageCDPExecutor
|
|
62
|
-
from osn_selenium.executors.trio_threads.cdp.system_info import SystemInfoCDPExecutor
|
|
63
|
-
from osn_selenium.executors.trio_threads.cdp.target import TargetCDPExecutor
|
|
64
|
-
from osn_selenium.executors.trio_threads.cdp.tethering import TetheringCDPExecutor
|
|
65
|
-
from osn_selenium.executors.trio_threads.cdp.tracing import TracingCDPExecutor
|
|
66
|
-
from osn_selenium.executors.trio_threads.cdp.web_audio import WebAudioCDPExecutor
|
|
67
|
-
from osn_selenium.executors.trio_threads.cdp.web_authn import WebAuthnCDPExecutor
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
class CDPExecutor(TrioThreadMixin, AbstractCDPExecutor):
|
|
71
|
-
def __init__(
|
|
72
|
-
self,
|
|
73
|
-
execute_function: Callable[[str, Dict[str, Any]], Any],
|
|
74
|
-
lock: trio.Lock,
|
|
75
|
-
limiter: trio.CapacityLimiter
|
|
76
|
-
):
|
|
77
|
-
super().__init__(lock=lock, limiter=limiter)
|
|
78
|
-
|
|
79
|
-
self._execute_function = execute_function
|
|
80
|
-
self._accessibility = None
|
|
81
|
-
self._animation = None
|
|
82
|
-
self._audits = None
|
|
83
|
-
self._autofill = None
|
|
84
|
-
self._background_service = None
|
|
85
|
-
self._bluetooth_emulation = None
|
|
86
|
-
self._browser = None
|
|
87
|
-
self._css = None
|
|
88
|
-
self._cache_storage = None
|
|
89
|
-
self._cast = None
|
|
90
|
-
self._console = None
|
|
91
|
-
self._dom = None
|
|
92
|
-
self._dom_debugger = None
|
|
93
|
-
self._dom_snapshot = None
|
|
94
|
-
self._dom_storage = None
|
|
95
|
-
self._debugger = None
|
|
96
|
-
self._device_access = None
|
|
97
|
-
self._device_orientation = None
|
|
98
|
-
self._emulation = None
|
|
99
|
-
self._event_breakpoints = None
|
|
100
|
-
self._extensions = None
|
|
101
|
-
self._fed_cm = None
|
|
102
|
-
self._fetch = None
|
|
103
|
-
self._file_system = None
|
|
104
|
-
self._headless_experimental = None
|
|
105
|
-
self._heap_profiler = None
|
|
106
|
-
self._io = None
|
|
107
|
-
self._indexed_db = None
|
|
108
|
-
self._input = None
|
|
109
|
-
self._inspector = None
|
|
110
|
-
self._layer_tree = None
|
|
111
|
-
self._log = None
|
|
112
|
-
self._media = None
|
|
113
|
-
self._memory = None
|
|
114
|
-
self._network = None
|
|
115
|
-
self._overlay = None
|
|
116
|
-
self._pwa = None
|
|
117
|
-
self._page = None
|
|
118
|
-
self._performance = None
|
|
119
|
-
self._performance_timeline = None
|
|
120
|
-
self._preload = None
|
|
121
|
-
self._profiler = None
|
|
122
|
-
self._runtime = None
|
|
123
|
-
self._schema = None
|
|
124
|
-
self._security = None
|
|
125
|
-
self._service_worker = None
|
|
126
|
-
self._storage = None
|
|
127
|
-
self._system_info = None
|
|
128
|
-
self._target = None
|
|
129
|
-
self._tethering = None
|
|
130
|
-
self._tracing = None
|
|
131
|
-
self._web_audio = None
|
|
132
|
-
self._web_authn = None
|
|
133
|
-
|
|
134
|
-
@property
|
|
135
|
-
def accessibility(self) -> "AccessibilityCDPExecutor":
|
|
136
|
-
if self._accessibility is None:
|
|
137
|
-
from osn_selenium.executors.trio_threads.cdp.accessibility import AccessibilityCDPExecutor
|
|
138
|
-
self._accessibility = AccessibilityCDPExecutor(
|
|
139
|
-
execute_function=self._execute_function,
|
|
140
|
-
lock=self._lock,
|
|
141
|
-
limiter=self._capacity_limiter
|
|
142
|
-
)
|
|
143
|
-
|
|
144
|
-
return self._accessibility
|
|
145
|
-
|
|
146
|
-
@property
|
|
147
|
-
def animation(self) -> "AnimationCDPExecutor":
|
|
148
|
-
if self._animation is None:
|
|
149
|
-
from osn_selenium.executors.trio_threads.cdp.animation import AnimationCDPExecutor
|
|
150
|
-
self._animation = AnimationCDPExecutor(
|
|
151
|
-
execute_function=self._execute_function,
|
|
152
|
-
lock=self._lock,
|
|
153
|
-
limiter=self._capacity_limiter
|
|
154
|
-
)
|
|
155
|
-
|
|
156
|
-
return self._animation
|
|
157
|
-
|
|
158
|
-
@property
|
|
159
|
-
def audits(self) -> "AuditsCDPExecutor":
|
|
160
|
-
if self._audits is None:
|
|
161
|
-
from osn_selenium.executors.trio_threads.cdp.audits import AuditsCDPExecutor
|
|
162
|
-
self._audits = AuditsCDPExecutor(
|
|
163
|
-
execute_function=self._execute_function,
|
|
164
|
-
lock=self._lock,
|
|
165
|
-
limiter=self._capacity_limiter
|
|
166
|
-
)
|
|
167
|
-
|
|
168
|
-
return self._audits
|
|
169
|
-
|
|
170
|
-
@property
|
|
171
|
-
def autofill(self) -> "AutofillCDPExecutor":
|
|
172
|
-
if self._autofill is None:
|
|
173
|
-
from osn_selenium.executors.trio_threads.cdp.autofill import AutofillCDPExecutor
|
|
174
|
-
self._autofill = AutofillCDPExecutor(
|
|
175
|
-
execute_function=self._execute_function,
|
|
176
|
-
lock=self._lock,
|
|
177
|
-
limiter=self._capacity_limiter
|
|
178
|
-
)
|
|
179
|
-
|
|
180
|
-
return self._autofill
|
|
181
|
-
|
|
182
|
-
@property
|
|
183
|
-
def background_service(self) -> "BackgroundServiceCDPExecutor":
|
|
184
|
-
if self._background_service is None:
|
|
185
|
-
from osn_selenium.executors.trio_threads.cdp.background_service import BackgroundServiceCDPExecutor
|
|
186
|
-
self._background_service = BackgroundServiceCDPExecutor(
|
|
187
|
-
execute_function=self._execute_function,
|
|
188
|
-
lock=self._lock,
|
|
189
|
-
limiter=self._capacity_limiter
|
|
190
|
-
)
|
|
191
|
-
|
|
192
|
-
return self._background_service
|
|
193
|
-
|
|
194
|
-
@property
|
|
195
|
-
def bluetooth_emulation(self) -> "BluetoothEmulationCDPExecutor":
|
|
196
|
-
if self._bluetooth_emulation is None:
|
|
197
|
-
from osn_selenium.executors.trio_threads.cdp.bluetooth_emulation import BluetoothEmulationCDPExecutor
|
|
198
|
-
self._bluetooth_emulation = BluetoothEmulationCDPExecutor(
|
|
199
|
-
execute_function=self._execute_function,
|
|
200
|
-
lock=self._lock,
|
|
201
|
-
limiter=self._capacity_limiter
|
|
202
|
-
)
|
|
203
|
-
|
|
204
|
-
return self._bluetooth_emulation
|
|
205
|
-
|
|
206
|
-
@property
|
|
207
|
-
def browser(self) -> "BrowserCDPExecutor":
|
|
208
|
-
if self._browser is None:
|
|
209
|
-
from osn_selenium.executors.trio_threads.cdp.browser import BrowserCDPExecutor
|
|
210
|
-
self._browser = BrowserCDPExecutor(
|
|
211
|
-
execute_function=self._execute_function,
|
|
212
|
-
lock=self._lock,
|
|
213
|
-
limiter=self._capacity_limiter
|
|
214
|
-
)
|
|
215
|
-
|
|
216
|
-
return self._browser
|
|
217
|
-
|
|
218
|
-
@property
|
|
219
|
-
def cache_storage(self) -> "CacheStorageCDPExecutor":
|
|
220
|
-
if self._cache_storage is None:
|
|
221
|
-
from osn_selenium.executors.trio_threads.cdp.cache_storage import CacheStorageCDPExecutor
|
|
222
|
-
self._cache_storage = CacheStorageCDPExecutor(
|
|
223
|
-
execute_function=self._execute_function,
|
|
224
|
-
lock=self._lock,
|
|
225
|
-
limiter=self._capacity_limiter
|
|
226
|
-
)
|
|
227
|
-
|
|
228
|
-
return self._cache_storage
|
|
229
|
-
|
|
230
|
-
@property
|
|
231
|
-
def cast(self) -> "CastCDPExecutor":
|
|
232
|
-
if self._cast is None:
|
|
233
|
-
from osn_selenium.executors.trio_threads.cdp.cast import CastCDPExecutor
|
|
234
|
-
self._cast = CastCDPExecutor(
|
|
235
|
-
execute_function=self._execute_function,
|
|
236
|
-
lock=self._lock,
|
|
237
|
-
limiter=self._capacity_limiter
|
|
238
|
-
)
|
|
239
|
-
|
|
240
|
-
return self._cast
|
|
241
|
-
|
|
242
|
-
@property
|
|
243
|
-
def console(self) -> "ConsoleCDPExecutor":
|
|
244
|
-
if self._console is None:
|
|
245
|
-
from osn_selenium.executors.trio_threads.cdp.console import ConsoleCDPExecutor
|
|
246
|
-
self._console = ConsoleCDPExecutor(
|
|
247
|
-
execute_function=self._execute_function,
|
|
248
|
-
lock=self._lock,
|
|
249
|
-
limiter=self._capacity_limiter
|
|
250
|
-
)
|
|
251
|
-
|
|
252
|
-
return self._console
|
|
253
|
-
|
|
254
|
-
@property
|
|
255
|
-
def css(self) -> "CssCDPExecutor":
|
|
256
|
-
if self._css is None:
|
|
257
|
-
from osn_selenium.executors.trio_threads.cdp.css import CssCDPExecutor
|
|
258
|
-
self._css = CssCDPExecutor(
|
|
259
|
-
execute_function=self._execute_function,
|
|
260
|
-
lock=self._lock,
|
|
261
|
-
limiter=self._capacity_limiter
|
|
262
|
-
)
|
|
263
|
-
|
|
264
|
-
return self._css
|
|
265
|
-
|
|
266
|
-
@property
|
|
267
|
-
def debugger(self) -> "DebuggerCDPExecutor":
|
|
268
|
-
if self._debugger is None:
|
|
269
|
-
from osn_selenium.executors.trio_threads.cdp.debugger import DebuggerCDPExecutor
|
|
270
|
-
self._debugger = DebuggerCDPExecutor(
|
|
271
|
-
execute_function=self._execute_function,
|
|
272
|
-
lock=self._lock,
|
|
273
|
-
limiter=self._capacity_limiter
|
|
274
|
-
)
|
|
275
|
-
|
|
276
|
-
return self._debugger
|
|
277
|
-
|
|
278
|
-
@property
|
|
279
|
-
def device_access(self) -> "DeviceAccessCDPExecutor":
|
|
280
|
-
if self._device_access is None:
|
|
281
|
-
from osn_selenium.executors.trio_threads.cdp.device_access import DeviceAccessCDPExecutor
|
|
282
|
-
self._device_access = DeviceAccessCDPExecutor(
|
|
283
|
-
execute_function=self._execute_function,
|
|
284
|
-
lock=self._lock,
|
|
285
|
-
limiter=self._capacity_limiter
|
|
286
|
-
)
|
|
287
|
-
|
|
288
|
-
return self._device_access
|
|
289
|
-
|
|
290
|
-
@property
|
|
291
|
-
def device_orientation(self) -> "DeviceOrientationCDPExecutor":
|
|
292
|
-
if self._device_orientation is None:
|
|
293
|
-
from osn_selenium.executors.trio_threads.cdp.device_orientation import DeviceOrientationCDPExecutor
|
|
294
|
-
self._device_orientation = DeviceOrientationCDPExecutor(
|
|
295
|
-
execute_function=self._execute_function,
|
|
296
|
-
lock=self._lock,
|
|
297
|
-
limiter=self._capacity_limiter
|
|
298
|
-
)
|
|
299
|
-
|
|
300
|
-
return self._device_orientation
|
|
301
|
-
|
|
302
|
-
@property
|
|
303
|
-
def dom(self) -> "DomCDPExecutor":
|
|
304
|
-
if self._dom is None:
|
|
305
|
-
from osn_selenium.executors.trio_threads.cdp.dom import DomCDPExecutor
|
|
306
|
-
self._dom = DomCDPExecutor(
|
|
307
|
-
execute_function=self._execute_function,
|
|
308
|
-
lock=self._lock,
|
|
309
|
-
limiter=self._capacity_limiter
|
|
310
|
-
)
|
|
311
|
-
|
|
312
|
-
return self._dom
|
|
313
|
-
|
|
314
|
-
@property
|
|
315
|
-
def dom_debugger(self) -> "DomDebuggerCDPExecutor":
|
|
316
|
-
if self._dom_debugger is None:
|
|
317
|
-
from osn_selenium.executors.trio_threads.cdp.dom_debugger import DomDebuggerCDPExecutor
|
|
318
|
-
self._dom_debugger = DomDebuggerCDPExecutor(
|
|
319
|
-
execute_function=self._execute_function,
|
|
320
|
-
lock=self._lock,
|
|
321
|
-
limiter=self._capacity_limiter
|
|
322
|
-
)
|
|
323
|
-
|
|
324
|
-
return self._dom_debugger
|
|
325
|
-
|
|
326
|
-
@property
|
|
327
|
-
def dom_snapshot(self) -> "DomSnapshotCDPExecutor":
|
|
328
|
-
if self._dom_snapshot is None:
|
|
329
|
-
from osn_selenium.executors.trio_threads.cdp.dom_snapshot import DomSnapshotCDPExecutor
|
|
330
|
-
self._dom_snapshot = DomSnapshotCDPExecutor(
|
|
331
|
-
execute_function=self._execute_function,
|
|
332
|
-
lock=self._lock,
|
|
333
|
-
limiter=self._capacity_limiter
|
|
334
|
-
)
|
|
335
|
-
|
|
336
|
-
return self._dom_snapshot
|
|
337
|
-
|
|
338
|
-
@property
|
|
339
|
-
def dom_storage(self) -> "DomStorageCDPExecutor":
|
|
340
|
-
if self._dom_storage is None:
|
|
341
|
-
from osn_selenium.executors.trio_threads.cdp.dom_storage import DomStorageCDPExecutor
|
|
342
|
-
self._dom_storage = DomStorageCDPExecutor(
|
|
343
|
-
execute_function=self._execute_function,
|
|
344
|
-
lock=self._lock,
|
|
345
|
-
limiter=self._capacity_limiter
|
|
346
|
-
)
|
|
347
|
-
|
|
348
|
-
return self._dom_storage
|
|
349
|
-
|
|
350
|
-
@property
|
|
351
|
-
def emulation(self) -> "EmulationCDPExecutor":
|
|
352
|
-
if self._emulation is None:
|
|
353
|
-
from osn_selenium.executors.trio_threads.cdp.emulation import EmulationCDPExecutor
|
|
354
|
-
self._emulation = EmulationCDPExecutor(
|
|
355
|
-
execute_function=self._execute_function,
|
|
356
|
-
lock=self._lock,
|
|
357
|
-
limiter=self._capacity_limiter
|
|
358
|
-
)
|
|
359
|
-
|
|
360
|
-
return self._emulation
|
|
361
|
-
|
|
362
|
-
@property
|
|
363
|
-
def event_breakpoints(self) -> "EventBreakpointsCDPExecutor":
|
|
364
|
-
if self._event_breakpoints is None:
|
|
365
|
-
from osn_selenium.executors.trio_threads.cdp.event_breakpoints import EventBreakpointsCDPExecutor
|
|
366
|
-
self._event_breakpoints = EventBreakpointsCDPExecutor(
|
|
367
|
-
execute_function=self._execute_function,
|
|
368
|
-
lock=self._lock,
|
|
369
|
-
limiter=self._capacity_limiter
|
|
370
|
-
)
|
|
371
|
-
|
|
372
|
-
return self._event_breakpoints
|
|
373
|
-
|
|
374
|
-
async def execute(self, cmd: str, cmd_args: Dict[str, Any]) -> Any:
|
|
375
|
-
return (await self._execute_function(cmd, cmd_args))["value"]
|
|
376
|
-
|
|
377
|
-
@property
|
|
378
|
-
def extensions(self) -> "ExtensionsCDPExecutor":
|
|
379
|
-
if self._extensions is None:
|
|
380
|
-
from osn_selenium.executors.trio_threads.cdp.extensions import ExtensionsCDPExecutor
|
|
381
|
-
self._extensions = ExtensionsCDPExecutor(
|
|
382
|
-
execute_function=self._execute_function,
|
|
383
|
-
lock=self._lock,
|
|
384
|
-
limiter=self._capacity_limiter
|
|
385
|
-
)
|
|
386
|
-
|
|
387
|
-
return self._extensions
|
|
388
|
-
|
|
389
|
-
@property
|
|
390
|
-
def fed_cm(self) -> "FedCmCDPExecutor":
|
|
391
|
-
if self._fed_cm is None:
|
|
392
|
-
from osn_selenium.executors.trio_threads.cdp.fed_cm import FedCmCDPExecutor
|
|
393
|
-
self._fed_cm = FedCmCDPExecutor(
|
|
394
|
-
execute_function=self._execute_function,
|
|
395
|
-
lock=self._lock,
|
|
396
|
-
limiter=self._capacity_limiter
|
|
397
|
-
)
|
|
398
|
-
|
|
399
|
-
return self._fed_cm
|
|
400
|
-
|
|
401
|
-
@property
|
|
402
|
-
def fetch(self) -> "FetchCDPExecutor":
|
|
403
|
-
if self._fetch is None:
|
|
404
|
-
from osn_selenium.executors.trio_threads.cdp.fetch import FetchCDPExecutor
|
|
405
|
-
self._fetch = FetchCDPExecutor(
|
|
406
|
-
execute_function=self._execute_function,
|
|
407
|
-
lock=self._lock,
|
|
408
|
-
limiter=self._capacity_limiter
|
|
409
|
-
)
|
|
410
|
-
|
|
411
|
-
return self._fetch
|
|
412
|
-
|
|
413
|
-
@property
|
|
414
|
-
def file_system(self) -> "FileSystemCDPExecutor":
|
|
415
|
-
if self._file_system is None:
|
|
416
|
-
from osn_selenium.executors.trio_threads.cdp.file_system import FileSystemCDPExecutor
|
|
417
|
-
self._file_system = FileSystemCDPExecutor(
|
|
418
|
-
execute_function=self._execute_function,
|
|
419
|
-
lock=self._lock,
|
|
420
|
-
limiter=self._capacity_limiter
|
|
421
|
-
)
|
|
422
|
-
|
|
423
|
-
return self._file_system
|
|
424
|
-
|
|
425
|
-
@property
|
|
426
|
-
def headless_experimental(self) -> "HeadlessExperimentalCDPExecutor":
|
|
427
|
-
if self._headless_experimental is None:
|
|
428
|
-
from osn_selenium.executors.trio_threads.cdp.headless_experimental import HeadlessExperimentalCDPExecutor
|
|
429
|
-
self._headless_experimental = HeadlessExperimentalCDPExecutor(
|
|
430
|
-
execute_function=self._execute_function,
|
|
431
|
-
lock=self._lock,
|
|
432
|
-
limiter=self._capacity_limiter
|
|
433
|
-
)
|
|
434
|
-
|
|
435
|
-
return self._headless_experimental
|
|
436
|
-
|
|
437
|
-
@property
|
|
438
|
-
def heap_profiler(self) -> "HeapProfilerCDPExecutor":
|
|
439
|
-
if self._heap_profiler is None:
|
|
440
|
-
from osn_selenium.executors.trio_threads.cdp.heap_profiler import HeapProfilerCDPExecutor
|
|
441
|
-
self._heap_profiler = HeapProfilerCDPExecutor(
|
|
442
|
-
execute_function=self._execute_function,
|
|
443
|
-
lock=self._lock,
|
|
444
|
-
limiter=self._capacity_limiter
|
|
445
|
-
)
|
|
446
|
-
|
|
447
|
-
return self._heap_profiler
|
|
448
|
-
|
|
449
|
-
@property
|
|
450
|
-
def indexed_db(self) -> "IndexedDbCDPExecutor":
|
|
451
|
-
if self._indexed_db is None:
|
|
452
|
-
from osn_selenium.executors.trio_threads.cdp.indexed_db import IndexedDbCDPExecutor
|
|
453
|
-
self._indexed_db = IndexedDbCDPExecutor(
|
|
454
|
-
execute_function=self._execute_function,
|
|
455
|
-
lock=self._lock,
|
|
456
|
-
limiter=self._capacity_limiter
|
|
457
|
-
)
|
|
458
|
-
|
|
459
|
-
return self._indexed_db
|
|
460
|
-
|
|
461
|
-
@property
|
|
462
|
-
def input(self) -> "InputCDPExecutor":
|
|
463
|
-
if self._input is None:
|
|
464
|
-
from osn_selenium.executors.trio_threads.cdp.input import InputCDPExecutor
|
|
465
|
-
self._input = InputCDPExecutor(
|
|
466
|
-
execute_function=self._execute_function,
|
|
467
|
-
lock=self._lock,
|
|
468
|
-
limiter=self._capacity_limiter
|
|
469
|
-
)
|
|
470
|
-
|
|
471
|
-
return self._input
|
|
472
|
-
|
|
473
|
-
@property
|
|
474
|
-
def inspector(self) -> "InspectorCDPExecutor":
|
|
475
|
-
if self._inspector is None:
|
|
476
|
-
from osn_selenium.executors.trio_threads.cdp.inspector import InspectorCDPExecutor
|
|
477
|
-
self._inspector = InspectorCDPExecutor(
|
|
478
|
-
execute_function=self._execute_function,
|
|
479
|
-
lock=self._lock,
|
|
480
|
-
limiter=self._capacity_limiter
|
|
481
|
-
)
|
|
482
|
-
|
|
483
|
-
return self._inspector
|
|
484
|
-
|
|
485
|
-
@property
|
|
486
|
-
def io(self) -> "IoCDPExecutor":
|
|
487
|
-
if self._io is None:
|
|
488
|
-
from osn_selenium.executors.trio_threads.cdp.io import IoCDPExecutor
|
|
489
|
-
self._io = IoCDPExecutor(
|
|
490
|
-
execute_function=self._execute_function,
|
|
491
|
-
lock=self._lock,
|
|
492
|
-
limiter=self._capacity_limiter
|
|
493
|
-
)
|
|
494
|
-
|
|
495
|
-
return self._io
|
|
496
|
-
|
|
497
|
-
@property
|
|
498
|
-
def layer_tree(self) -> "LayerTreeCDPExecutor":
|
|
499
|
-
if self._layer_tree is None:
|
|
500
|
-
from osn_selenium.executors.trio_threads.cdp.layer_tree import LayerTreeCDPExecutor
|
|
501
|
-
self._layer_tree = LayerTreeCDPExecutor(
|
|
502
|
-
execute_function=self._execute_function,
|
|
503
|
-
lock=self._lock,
|
|
504
|
-
limiter=self._capacity_limiter
|
|
505
|
-
)
|
|
506
|
-
|
|
507
|
-
return self._layer_tree
|
|
508
|
-
|
|
509
|
-
@property
|
|
510
|
-
def log(self) -> "LogCDPExecutor":
|
|
511
|
-
if self._log is None:
|
|
512
|
-
from osn_selenium.executors.trio_threads.cdp.log import LogCDPExecutor
|
|
513
|
-
self._log = LogCDPExecutor(
|
|
514
|
-
execute_function=self._execute_function,
|
|
515
|
-
lock=self._lock,
|
|
516
|
-
limiter=self._capacity_limiter
|
|
517
|
-
)
|
|
518
|
-
|
|
519
|
-
return self._log
|
|
520
|
-
|
|
521
|
-
@property
|
|
522
|
-
def media(self) -> "MediaCDPExecutor":
|
|
523
|
-
if self._media is None:
|
|
524
|
-
from osn_selenium.executors.trio_threads.cdp.media import MediaCDPExecutor
|
|
525
|
-
self._media = MediaCDPExecutor(
|
|
526
|
-
execute_function=self._execute_function,
|
|
527
|
-
lock=self._lock,
|
|
528
|
-
limiter=self._capacity_limiter
|
|
529
|
-
)
|
|
530
|
-
|
|
531
|
-
return self._media
|
|
532
|
-
|
|
533
|
-
@property
|
|
534
|
-
def memory(self) -> "MemoryCDPExecutor":
|
|
535
|
-
if self._memory is None:
|
|
536
|
-
from osn_selenium.executors.trio_threads.cdp.memory import MemoryCDPExecutor
|
|
537
|
-
self._memory = MemoryCDPExecutor(
|
|
538
|
-
execute_function=self._execute_function,
|
|
539
|
-
lock=self._lock,
|
|
540
|
-
limiter=self._capacity_limiter
|
|
541
|
-
)
|
|
542
|
-
|
|
543
|
-
return self._memory
|
|
544
|
-
|
|
545
|
-
@property
|
|
546
|
-
def network(self) -> "NetworkCDPExecutor":
|
|
547
|
-
if self._network is None:
|
|
548
|
-
from osn_selenium.executors.trio_threads.cdp.network import NetworkCDPExecutor
|
|
549
|
-
self._network = NetworkCDPExecutor(
|
|
550
|
-
execute_function=self._execute_function,
|
|
551
|
-
lock=self._lock,
|
|
552
|
-
limiter=self._capacity_limiter
|
|
553
|
-
)
|
|
554
|
-
|
|
555
|
-
return self._network
|
|
556
|
-
|
|
557
|
-
@property
|
|
558
|
-
def overlay(self) -> "OverlayCDPExecutor":
|
|
559
|
-
if self._overlay is None:
|
|
560
|
-
from osn_selenium.executors.trio_threads.cdp.overlay import OverlayCDPExecutor
|
|
561
|
-
self._overlay = OverlayCDPExecutor(
|
|
562
|
-
execute_function=self._execute_function,
|
|
563
|
-
lock=self._lock,
|
|
564
|
-
limiter=self._capacity_limiter
|
|
565
|
-
)
|
|
566
|
-
|
|
567
|
-
return self._overlay
|
|
568
|
-
|
|
569
|
-
@property
|
|
570
|
-
def page(self) -> "PageCDPExecutor":
|
|
571
|
-
if self._page is None:
|
|
572
|
-
from osn_selenium.executors.trio_threads.cdp.page import PageCDPExecutor
|
|
573
|
-
self._page = PageCDPExecutor(
|
|
574
|
-
execute_function=self._execute_function,
|
|
575
|
-
lock=self._lock,
|
|
576
|
-
limiter=self._capacity_limiter
|
|
577
|
-
)
|
|
578
|
-
|
|
579
|
-
return self._page
|
|
580
|
-
|
|
581
|
-
@property
|
|
582
|
-
def performance(self) -> "PerformanceCDPExecutor":
|
|
583
|
-
if self._performance is None:
|
|
584
|
-
from osn_selenium.executors.trio_threads.cdp.performance import PerformanceCDPExecutor
|
|
585
|
-
self._performance = PerformanceCDPExecutor(
|
|
586
|
-
execute_function=self._execute_function,
|
|
587
|
-
lock=self._lock,
|
|
588
|
-
limiter=self._capacity_limiter
|
|
589
|
-
)
|
|
590
|
-
|
|
591
|
-
return self._performance
|
|
592
|
-
|
|
593
|
-
@property
|
|
594
|
-
def performance_timeline(self) -> "PerformanceTimelineCDPExecutor":
|
|
595
|
-
if self._performance_timeline is None:
|
|
596
|
-
from osn_selenium.executors.trio_threads.cdp.performance_timeline import PerformanceTimelineCDPExecutor
|
|
597
|
-
self._performance_timeline = PerformanceTimelineCDPExecutor(
|
|
598
|
-
execute_function=self._execute_function,
|
|
599
|
-
lock=self._lock,
|
|
600
|
-
limiter=self._capacity_limiter
|
|
601
|
-
)
|
|
602
|
-
|
|
603
|
-
return self._performance_timeline
|
|
604
|
-
|
|
605
|
-
@property
|
|
606
|
-
def preload(self) -> "PreloadCDPExecutor":
|
|
607
|
-
if self._preload is None:
|
|
608
|
-
from osn_selenium.executors.trio_threads.cdp.preload import PreloadCDPExecutor
|
|
609
|
-
self._preload = PreloadCDPExecutor(
|
|
610
|
-
execute_function=self._execute_function,
|
|
611
|
-
lock=self._lock,
|
|
612
|
-
limiter=self._capacity_limiter
|
|
613
|
-
)
|
|
614
|
-
|
|
615
|
-
return self._preload
|
|
616
|
-
|
|
617
|
-
@property
|
|
618
|
-
def profiler(self) -> "ProfilerCDPExecutor":
|
|
619
|
-
if self._profiler is None:
|
|
620
|
-
from osn_selenium.executors.trio_threads.cdp.profiler import ProfilerCDPExecutor
|
|
621
|
-
self._profiler = ProfilerCDPExecutor(
|
|
622
|
-
execute_function=self._execute_function,
|
|
623
|
-
lock=self._lock,
|
|
624
|
-
limiter=self._capacity_limiter
|
|
625
|
-
)
|
|
626
|
-
|
|
627
|
-
return self._profiler
|
|
628
|
-
|
|
629
|
-
@property
|
|
630
|
-
def pwa(self) -> "PwaCDPExecutor":
|
|
631
|
-
if self._pwa is None:
|
|
632
|
-
from osn_selenium.executors.trio_threads.cdp.pwa import PwaCDPExecutor
|
|
633
|
-
self._pwa = PwaCDPExecutor(
|
|
634
|
-
execute_function=self._execute_function,
|
|
635
|
-
lock=self._lock,
|
|
636
|
-
limiter=self._capacity_limiter
|
|
637
|
-
)
|
|
638
|
-
|
|
639
|
-
return self._pwa
|
|
640
|
-
|
|
641
|
-
@property
|
|
642
|
-
def runtime(self) -> "RuntimeCDPExecutor":
|
|
643
|
-
if self._runtime is None:
|
|
644
|
-
from osn_selenium.executors.trio_threads.cdp.runtime import RuntimeCDPExecutor
|
|
645
|
-
self._runtime = RuntimeCDPExecutor(
|
|
646
|
-
execute_function=self._execute_function,
|
|
647
|
-
lock=self._lock,
|
|
648
|
-
limiter=self._capacity_limiter
|
|
649
|
-
)
|
|
650
|
-
|
|
651
|
-
return self._runtime
|
|
652
|
-
|
|
653
|
-
@property
|
|
654
|
-
def schema(self) -> "SchemaCDPExecutor":
|
|
655
|
-
if self._schema is None:
|
|
656
|
-
from osn_selenium.executors.trio_threads.cdp.schema import SchemaCDPExecutor
|
|
657
|
-
self._schema = SchemaCDPExecutor(
|
|
658
|
-
execute_function=self._execute_function,
|
|
659
|
-
lock=self._lock,
|
|
660
|
-
limiter=self._capacity_limiter
|
|
661
|
-
)
|
|
662
|
-
|
|
663
|
-
return self._schema
|
|
664
|
-
|
|
665
|
-
@property
|
|
666
|
-
def security(self) -> "SecurityCDPExecutor":
|
|
667
|
-
if self._security is None:
|
|
668
|
-
from osn_selenium.executors.trio_threads.cdp.security import SecurityCDPExecutor
|
|
669
|
-
self._security = SecurityCDPExecutor(
|
|
670
|
-
execute_function=self._execute_function,
|
|
671
|
-
lock=self._lock,
|
|
672
|
-
limiter=self._capacity_limiter
|
|
673
|
-
)
|
|
674
|
-
|
|
675
|
-
return self._security
|
|
676
|
-
|
|
677
|
-
@property
|
|
678
|
-
def service_worker(self) -> "ServiceWorkerCDPExecutor":
|
|
679
|
-
if self._service_worker is None:
|
|
680
|
-
from osn_selenium.executors.trio_threads.cdp.service_worker import ServiceWorkerCDPExecutor
|
|
681
|
-
self._service_worker = ServiceWorkerCDPExecutor(
|
|
682
|
-
execute_function=self._execute_function,
|
|
683
|
-
lock=self._lock,
|
|
684
|
-
limiter=self._capacity_limiter
|
|
685
|
-
)
|
|
686
|
-
|
|
687
|
-
return self._service_worker
|
|
688
|
-
|
|
689
|
-
@property
|
|
690
|
-
def storage(self) -> "StorageCDPExecutor":
|
|
691
|
-
if self._storage is None:
|
|
692
|
-
from osn_selenium.executors.trio_threads.cdp.storage import StorageCDPExecutor
|
|
693
|
-
self._storage = StorageCDPExecutor(
|
|
694
|
-
execute_function=self._execute_function,
|
|
695
|
-
lock=self._lock,
|
|
696
|
-
limiter=self._capacity_limiter
|
|
697
|
-
)
|
|
698
|
-
|
|
699
|
-
return self._storage
|
|
700
|
-
|
|
701
|
-
@property
|
|
702
|
-
def system_info(self) -> "SystemInfoCDPExecutor":
|
|
703
|
-
if self._system_info is None:
|
|
704
|
-
from osn_selenium.executors.trio_threads.cdp.system_info import SystemInfoCDPExecutor
|
|
705
|
-
self._system_info = SystemInfoCDPExecutor(
|
|
706
|
-
execute_function=self._execute_function,
|
|
707
|
-
lock=self._lock,
|
|
708
|
-
limiter=self._capacity_limiter
|
|
709
|
-
)
|
|
710
|
-
|
|
711
|
-
return self._system_info
|
|
712
|
-
|
|
713
|
-
@property
|
|
714
|
-
def target(self) -> "TargetCDPExecutor":
|
|
715
|
-
if self._target is None:
|
|
716
|
-
from osn_selenium.executors.trio_threads.cdp.target import TargetCDPExecutor
|
|
717
|
-
self._target = TargetCDPExecutor(
|
|
718
|
-
execute_function=self._execute_function,
|
|
719
|
-
lock=self._lock,
|
|
720
|
-
limiter=self._capacity_limiter
|
|
721
|
-
)
|
|
722
|
-
|
|
723
|
-
return self._target
|
|
724
|
-
|
|
725
|
-
@property
|
|
726
|
-
def tethering(self) -> "TetheringCDPExecutor":
|
|
727
|
-
if self._tethering is None:
|
|
728
|
-
from osn_selenium.executors.trio_threads.cdp.tethering import TetheringCDPExecutor
|
|
729
|
-
self._tethering = TetheringCDPExecutor(
|
|
730
|
-
execute_function=self._execute_function,
|
|
731
|
-
lock=self._lock,
|
|
732
|
-
limiter=self._capacity_limiter
|
|
733
|
-
)
|
|
734
|
-
|
|
735
|
-
return self._tethering
|
|
736
|
-
|
|
737
|
-
@property
|
|
738
|
-
def tracing(self) -> "TracingCDPExecutor":
|
|
739
|
-
if self._tracing is None:
|
|
740
|
-
from osn_selenium.executors.trio_threads.cdp.tracing import TracingCDPExecutor
|
|
741
|
-
self._tracing = TracingCDPExecutor(
|
|
742
|
-
execute_function=self._execute_function,
|
|
743
|
-
lock=self._lock,
|
|
744
|
-
limiter=self._capacity_limiter
|
|
745
|
-
)
|
|
746
|
-
|
|
747
|
-
return self._tracing
|
|
748
|
-
|
|
749
|
-
@property
|
|
750
|
-
def web_audio(self) -> "WebAudioCDPExecutor":
|
|
751
|
-
if self._web_audio is None:
|
|
752
|
-
from osn_selenium.executors.trio_threads.cdp.web_audio import WebAudioCDPExecutor
|
|
753
|
-
self._web_audio = WebAudioCDPExecutor(
|
|
754
|
-
execute_function=self._execute_function,
|
|
755
|
-
lock=self._lock,
|
|
756
|
-
limiter=self._capacity_limiter
|
|
757
|
-
)
|
|
758
|
-
|
|
759
|
-
return self._web_audio
|
|
760
|
-
|
|
761
|
-
@property
|
|
762
|
-
def web_authn(self) -> "WebAuthnCDPExecutor":
|
|
763
|
-
if self._web_authn is None:
|
|
764
|
-
from osn_selenium.executors.trio_threads.cdp.web_authn import WebAuthnCDPExecutor
|
|
765
|
-
self._web_authn = WebAuthnCDPExecutor(
|
|
766
|
-
execute_function=self._execute_function,
|
|
767
|
-
lock=self._lock,
|
|
768
|
-
limiter=self._capacity_limiter
|
|
769
|
-
)
|
|
770
|
-
|
|
771
|
-
return self._web_authn
|