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.
Files changed (475) hide show
  1. osn_selenium/_base_models.py +41 -0
  2. osn_selenium/_cdp_import.py +253 -0
  3. osn_selenium/_decorators.py +57 -0
  4. osn_selenium/_trio_threads_helpers.py +157 -0
  5. osn_selenium/_typehints.py +1 -1
  6. osn_selenium/abstract/executors/cdp.py +63 -0
  7. osn_selenium/abstract/webdriver/blink/base.py +14 -0
  8. osn_selenium/abstract/webdriver/blink/lifecycle.py +8 -8
  9. osn_selenium/abstract/webdriver/core/base.py +0 -14
  10. osn_selenium/abstract/webdriver/core/capture.py +4 -3
  11. osn_selenium/abstract/webdriver/core/lifecycle.py +8 -8
  12. osn_selenium/abstract/webdriver/core/script.py +5 -4
  13. osn_selenium/abstract/webdriver/core/window.py +11 -11
  14. osn_selenium/browsers_handler/models.py +1 -1
  15. osn_selenium/dev_tools/_decorators.py +19 -51
  16. osn_selenium/dev_tools/_functions.py +2 -4
  17. osn_selenium/dev_tools/_typehints.py +5 -2
  18. osn_selenium/dev_tools/_wrappers.py +0 -3
  19. osn_selenium/dev_tools/domains/__init__.py +2 -2
  20. osn_selenium/dev_tools/domains/abstract.py +1 -1
  21. osn_selenium/dev_tools/domains/fetch.py +6 -8
  22. osn_selenium/dev_tools/domains_default/fetch.py +2 -2
  23. osn_selenium/dev_tools/filters.py +1 -1
  24. osn_selenium/dev_tools/logger/main.py +9 -21
  25. osn_selenium/dev_tools/logger/models.py +1 -1
  26. osn_selenium/dev_tools/logger/target.py +49 -29
  27. osn_selenium/dev_tools/manager/base.py +10 -42
  28. osn_selenium/dev_tools/manager/lifecycle.py +84 -75
  29. osn_selenium/dev_tools/manager/logging.py +1 -1
  30. osn_selenium/dev_tools/manager/targets.py +13 -5
  31. osn_selenium/dev_tools/models.py +1 -1
  32. osn_selenium/dev_tools/settings.py +9 -5
  33. osn_selenium/dev_tools/target/base.py +30 -34
  34. osn_selenium/dev_tools/target/discovery.py +1 -1
  35. osn_selenium/dev_tools/target/events.py +2 -2
  36. osn_selenium/dev_tools/target/fingerprint.py +1 -1
  37. osn_selenium/dev_tools/target/lifecycle.py +103 -38
  38. osn_selenium/dev_tools/target/logging.py +11 -3
  39. osn_selenium/exceptions/__init__.py +0 -1
  40. osn_selenium/exceptions/base.py +28 -1
  41. osn_selenium/exceptions/bidi_bridge.py +59 -0
  42. osn_selenium/exceptions/configuration.py +1 -8
  43. osn_selenium/exceptions/dependencies.py +60 -0
  44. osn_selenium/exceptions/devtools.py +9 -39
  45. osn_selenium/exceptions/experimental.py +26 -0
  46. osn_selenium/exceptions/flags.py +0 -2
  47. osn_selenium/exceptions/instance.py +1 -9
  48. osn_selenium/exceptions/javascript.py +0 -2
  49. osn_selenium/exceptions/logic.py +0 -2
  50. osn_selenium/exceptions/path.py +1 -9
  51. osn_selenium/exceptions/platform.py +0 -2
  52. osn_selenium/exceptions/protocol.py +0 -3
  53. osn_selenium/exceptions/webdriver.py +1 -7
  54. osn_selenium/exceptions/window.py +1 -8
  55. osn_selenium/executors/sync/cdp.py +95 -0
  56. osn_selenium/executors/trio_bidi/cdp.py +101 -0
  57. osn_selenium/executors/trio_bidi/javascript.py +101 -0
  58. osn_selenium/executors/trio_threads/cdp.py +99 -0
  59. osn_selenium/executors/trio_threads/javascript.py +1 -1
  60. osn_selenium/executors/unified/javascript.py +0 -4
  61. osn_selenium/flags/base.py +7 -13
  62. osn_selenium/flags/blink.py +2 -8
  63. osn_selenium/flags/chrome.py +6 -6
  64. osn_selenium/flags/edge.py +6 -6
  65. osn_selenium/flags/models/base.py +4 -4
  66. osn_selenium/flags/models/blink.py +1 -1
  67. osn_selenium/flags/models/values.py +1 -1
  68. osn_selenium/instances/convert.py +44 -3
  69. osn_selenium/instances/protocols.py +47 -1
  70. osn_selenium/instances/sync/action_chains/__init__.py +6 -0
  71. osn_selenium/instances/sync/browsing_context.py +2 -2
  72. osn_selenium/instances/sync/script.py +7 -2
  73. osn_selenium/instances/sync/shadow_root.py +30 -8
  74. osn_selenium/instances/sync/web_element.py +1 -1
  75. osn_selenium/instances/trio_bidi/__init__.py +1 -0
  76. osn_selenium/instances/trio_bidi/shadow_root.py +180 -0
  77. osn_selenium/instances/trio_bidi/switch_to.py +143 -0
  78. osn_selenium/instances/trio_bidi/web_driver_wait.py +124 -0
  79. osn_selenium/instances/trio_bidi/web_element.py +239 -0
  80. osn_selenium/instances/trio_threads/action_chains/__init__.py +6 -0
  81. osn_selenium/instances/trio_threads/action_chains/base.py +1 -1
  82. osn_selenium/instances/trio_threads/alert.py +1 -1
  83. osn_selenium/instances/trio_threads/browser.py +1 -1
  84. osn_selenium/instances/trio_threads/browsing_context.py +3 -3
  85. osn_selenium/instances/trio_threads/dialog.py +1 -1
  86. osn_selenium/instances/trio_threads/fedcm.py +1 -1
  87. osn_selenium/instances/trio_threads/mobile.py +1 -1
  88. osn_selenium/instances/trio_threads/network.py +1 -1
  89. osn_selenium/instances/trio_threads/permissions.py +1 -1
  90. osn_selenium/instances/trio_threads/script.py +8 -3
  91. osn_selenium/instances/trio_threads/shadow_root.py +46 -15
  92. osn_selenium/instances/trio_threads/storage.py +1 -1
  93. osn_selenium/instances/trio_threads/switch_to.py +1 -1
  94. osn_selenium/instances/trio_threads/web_driver_wait.py +1 -1
  95. osn_selenium/instances/trio_threads/web_element.py +1 -1
  96. osn_selenium/instances/trio_threads/web_extension.py +1 -1
  97. osn_selenium/instances/unified/browsing_context.py +2 -2
  98. osn_selenium/instances/unified/script.py +2 -2
  99. osn_selenium/instances/unified/web_element.py +3 -5
  100. osn_selenium/javascript/fingerprint/__init__.py +3 -2
  101. osn_selenium/javascript/fingerprint/registry/models.py +1 -1
  102. osn_selenium/javascript/fingerprint/spoof/core_rules.py +1 -1
  103. osn_selenium/javascript/fingerprint/spoof/noise.py +1 -1
  104. osn_selenium/javascript/models.py +1 -1
  105. osn_selenium/models.py +2 -47
  106. osn_selenium/trio_bidi/__init__.py +1 -0
  107. osn_selenium/trio_bidi/_context_vars.py +12 -0
  108. osn_selenium/trio_bidi/_error_mappings.py +123 -0
  109. osn_selenium/trio_bidi/_error_redirects.py +194 -0
  110. osn_selenium/trio_bidi/_file_functions.py +28 -0
  111. osn_selenium/trio_bidi/_internal_mappings.py +10 -0
  112. osn_selenium/trio_bidi/_models.py +199 -0
  113. osn_selenium/trio_bidi/_typehints.py +20 -0
  114. osn_selenium/trio_bidi/connection_pool.py +587 -0
  115. osn_selenium/trio_bidi/mapping/__init__.py +1 -0
  116. osn_selenium/trio_bidi/mapping/_constants.py +14 -0
  117. osn_selenium/trio_bidi/mapping/_js_snippets.py +285 -0
  118. osn_selenium/trio_bidi/mapping/_utils.py +4 -0
  119. osn_selenium/trio_bidi/mapping/request_functions/__init__.py +87 -0
  120. osn_selenium/trio_bidi/mapping/request_functions/_alert.py +102 -0
  121. osn_selenium/trio_bidi/mapping/request_functions/_args_helpers.py +225 -0
  122. osn_selenium/trio_bidi/mapping/request_functions/_capture.py +71 -0
  123. osn_selenium/trio_bidi/mapping/request_functions/_cdp.py +40 -0
  124. osn_selenium/trio_bidi/mapping/request_functions/_element.py +55 -0
  125. osn_selenium/trio_bidi/mapping/request_functions/_file.py +32 -0
  126. osn_selenium/trio_bidi/mapping/request_functions/_navigation.py +147 -0
  127. osn_selenium/trio_bidi/mapping/request_functions/_script.py +85 -0
  128. osn_selenium/trio_bidi/mapping/request_functions/_shadow_root.py +65 -0
  129. osn_selenium/trio_bidi/mapping/request_functions/_switch_to.py +59 -0
  130. osn_selenium/trio_bidi/mapping/request_functions/_web_element.py +448 -0
  131. osn_selenium/trio_bidi/mapping/request_functions/_window.py +125 -0
  132. osn_selenium/trio_bidi/mapping/response_functions/__init__.py +86 -0
  133. osn_selenium/trio_bidi/mapping/response_functions/_alert.py +81 -0
  134. osn_selenium/trio_bidi/mapping/response_functions/_args_helpers.py +183 -0
  135. osn_selenium/trio_bidi/mapping/response_functions/_args_validators.py +153 -0
  136. osn_selenium/trio_bidi/mapping/response_functions/_capture.py +71 -0
  137. osn_selenium/trio_bidi/mapping/response_functions/_cdp.py +26 -0
  138. osn_selenium/trio_bidi/mapping/response_functions/_element.py +58 -0
  139. osn_selenium/trio_bidi/mapping/response_functions/_file.py +30 -0
  140. osn_selenium/trio_bidi/mapping/response_functions/_navigation.py +120 -0
  141. osn_selenium/trio_bidi/mapping/response_functions/_script.py +57 -0
  142. osn_selenium/trio_bidi/mapping/response_functions/_shadow_root.py +58 -0
  143. osn_selenium/trio_bidi/mapping/response_functions/_switch_to.py +57 -0
  144. osn_selenium/trio_bidi/mapping/response_functions/_web_element.py +368 -0
  145. osn_selenium/trio_bidi/mapping/response_functions/_window.py +119 -0
  146. osn_selenium/trio_bidi/mixin.py +186 -0
  147. osn_selenium/trio_bidi/remote_connection.py +164 -0
  148. osn_selenium/{base_mixin.py → trio_threads_mixin.py} +31 -40
  149. osn_selenium/webdrivers/_args_helpers.py +120 -7
  150. osn_selenium/webdrivers/_bridges.py +2 -2
  151. osn_selenium/webdrivers/_executable_tables/models.py +1 -1
  152. osn_selenium/webdrivers/_typehints.py +9 -3
  153. osn_selenium/webdrivers/protocols.py +81 -1
  154. osn_selenium/webdrivers/sync/blink/__init__.py +11 -1
  155. osn_selenium/webdrivers/sync/blink/base.py +23 -1
  156. osn_selenium/webdrivers/sync/blink/lifecycle.py +26 -8
  157. osn_selenium/webdrivers/sync/chrome/__init__.py +36 -1
  158. osn_selenium/webdrivers/sync/chrome/base.py +13 -1
  159. osn_selenium/webdrivers/sync/chrome/lifecycle.py +23 -5
  160. osn_selenium/webdrivers/sync/chrome/settings.py +6 -1
  161. osn_selenium/webdrivers/sync/core/__init__.py +10 -1
  162. osn_selenium/webdrivers/sync/core/base.py +18 -18
  163. osn_selenium/webdrivers/sync/core/capture.py +3 -2
  164. osn_selenium/webdrivers/sync/core/file.py +3 -2
  165. osn_selenium/webdrivers/sync/core/lifecycle.py +44 -10
  166. osn_selenium/webdrivers/sync/core/script.py +3 -2
  167. osn_selenium/webdrivers/sync/core/window.py +3 -3
  168. osn_selenium/webdrivers/sync/edge/__init__.py +36 -1
  169. osn_selenium/webdrivers/sync/edge/base.py +13 -1
  170. osn_selenium/webdrivers/sync/edge/lifecycle.py +23 -5
  171. osn_selenium/webdrivers/sync/edge/settings.py +6 -1
  172. osn_selenium/webdrivers/sync/yandex/__init__.py +36 -1
  173. osn_selenium/webdrivers/sync/yandex/base.py +13 -1
  174. osn_selenium/webdrivers/sync/yandex/lifecycle.py +23 -5
  175. osn_selenium/webdrivers/sync/yandex/settings.py +6 -1
  176. osn_selenium/webdrivers/trio_bidi/__init__.py +1 -0
  177. osn_selenium/webdrivers/trio_bidi/blink/__init__.py +132 -0
  178. osn_selenium/webdrivers/trio_bidi/blink/base.py +167 -0
  179. osn_selenium/webdrivers/trio_bidi/blink/lifecycle.py +89 -0
  180. osn_selenium/webdrivers/trio_bidi/blink/settings.py +63 -0
  181. osn_selenium/webdrivers/trio_bidi/chrome/__init__.py +114 -0
  182. osn_selenium/webdrivers/trio_bidi/chrome/base.py +127 -0
  183. osn_selenium/webdrivers/trio_bidi/chrome/lifecycle.py +85 -0
  184. osn_selenium/webdrivers/trio_bidi/chrome/settings.py +63 -0
  185. osn_selenium/webdrivers/trio_bidi/core/__init__.py +95 -0
  186. osn_selenium/webdrivers/trio_bidi/core/actions.py +70 -0
  187. osn_selenium/webdrivers/trio_bidi/core/base.py +200 -0
  188. osn_selenium/webdrivers/trio_bidi/core/capture.py +39 -0
  189. osn_selenium/webdrivers/trio_bidi/core/devtools.py +49 -0
  190. osn_selenium/webdrivers/trio_bidi/core/element.py +64 -0
  191. osn_selenium/webdrivers/trio_bidi/core/lifecycle.py +135 -0
  192. osn_selenium/webdrivers/trio_bidi/core/navigation.py +37 -0
  193. osn_selenium/webdrivers/trio_bidi/core/script.py +56 -0
  194. osn_selenium/webdrivers/trio_bidi/core/settings.py +36 -0
  195. osn_selenium/webdrivers/trio_bidi/core/window.py +134 -0
  196. osn_selenium/webdrivers/trio_bidi/edge/__init__.py +114 -0
  197. osn_selenium/webdrivers/trio_bidi/edge/base.py +123 -0
  198. osn_selenium/webdrivers/trio_bidi/edge/lifecycle.py +85 -0
  199. osn_selenium/webdrivers/trio_bidi/edge/settings.py +63 -0
  200. osn_selenium/webdrivers/trio_bidi/yandex/__init__.py +114 -0
  201. osn_selenium/webdrivers/trio_bidi/yandex/base.py +120 -0
  202. osn_selenium/webdrivers/trio_bidi/yandex/lifecycle.py +85 -0
  203. osn_selenium/webdrivers/trio_bidi/yandex/settings.py +63 -0
  204. osn_selenium/webdrivers/trio_threads/blink/__init__.py +18 -2
  205. osn_selenium/webdrivers/trio_threads/blink/base.py +25 -1
  206. osn_selenium/webdrivers/trio_threads/blink/casting.py +1 -1
  207. osn_selenium/webdrivers/trio_threads/blink/features.py +1 -1
  208. osn_selenium/webdrivers/trio_threads/blink/lifecycle.py +26 -8
  209. osn_selenium/webdrivers/trio_threads/blink/logging.py +1 -1
  210. osn_selenium/webdrivers/trio_threads/blink/network.py +1 -1
  211. osn_selenium/webdrivers/trio_threads/chrome/__init__.py +34 -1
  212. osn_selenium/webdrivers/trio_threads/chrome/base.py +14 -2
  213. osn_selenium/webdrivers/trio_threads/chrome/lifecycle.py +23 -5
  214. osn_selenium/webdrivers/trio_threads/chrome/settings.py +1 -1
  215. osn_selenium/webdrivers/trio_threads/core/__init__.py +10 -14
  216. osn_selenium/webdrivers/trio_threads/core/actions.py +1 -1
  217. osn_selenium/webdrivers/trio_threads/core/auth.py +1 -1
  218. osn_selenium/webdrivers/trio_threads/core/base.py +18 -22
  219. osn_selenium/webdrivers/trio_threads/core/capture.py +4 -3
  220. osn_selenium/webdrivers/trio_threads/core/comonents.py +1 -1
  221. osn_selenium/webdrivers/trio_threads/core/devtools.py +1 -1
  222. osn_selenium/webdrivers/trio_threads/core/element.py +1 -1
  223. osn_selenium/webdrivers/trio_threads/core/file.py +5 -4
  224. osn_selenium/webdrivers/trio_threads/core/lifecycle.py +45 -11
  225. osn_selenium/webdrivers/trio_threads/core/navigation.py +1 -1
  226. osn_selenium/webdrivers/trio_threads/core/script.py +4 -3
  227. osn_selenium/webdrivers/trio_threads/core/settings.py +1 -1
  228. osn_selenium/webdrivers/trio_threads/core/storage.py +1 -1
  229. osn_selenium/webdrivers/trio_threads/core/timeouts.py +1 -1
  230. osn_selenium/webdrivers/trio_threads/core/window.py +6 -6
  231. osn_selenium/webdrivers/trio_threads/edge/__init__.py +34 -1
  232. osn_selenium/webdrivers/trio_threads/edge/base.py +14 -2
  233. osn_selenium/webdrivers/trio_threads/edge/lifecycle.py +23 -5
  234. osn_selenium/webdrivers/trio_threads/edge/settings.py +1 -1
  235. osn_selenium/webdrivers/trio_threads/yandex/__init__.py +34 -1
  236. osn_selenium/webdrivers/trio_threads/yandex/base.py +14 -2
  237. osn_selenium/webdrivers/trio_threads/yandex/lifecycle.py +23 -5
  238. osn_selenium/webdrivers/trio_threads/yandex/settings.py +1 -1
  239. osn_selenium/webdrivers/unified/blink/base.py +9 -1
  240. osn_selenium/webdrivers/unified/blink/lifecycle.py +4 -2
  241. osn_selenium/webdrivers/unified/chrome/base.py +9 -1
  242. osn_selenium/webdrivers/unified/core/auth.py +4 -2
  243. osn_selenium/webdrivers/unified/core/base.py +19 -6
  244. osn_selenium/webdrivers/unified/core/capture.py +3 -2
  245. osn_selenium/webdrivers/unified/core/components.py +12 -7
  246. osn_selenium/webdrivers/unified/core/devtools.py +2 -1
  247. osn_selenium/webdrivers/unified/core/file.py +3 -2
  248. osn_selenium/webdrivers/unified/core/lifecycle.py +5 -3
  249. osn_selenium/webdrivers/unified/core/script.py +5 -3
  250. osn_selenium/webdrivers/unified/core/storage.py +2 -1
  251. osn_selenium/webdrivers/unified/core/window.py +9 -8
  252. osn_selenium/webdrivers/unified/edge/base.py +9 -1
  253. osn_selenium/webdrivers/unified/yandex/base.py +9 -1
  254. {osn_selenium-1.0.0.dist-info → osn_selenium-1.2.0.dist-info}/METADATA +24 -10
  255. osn_selenium-1.2.0.dist-info/RECORD +480 -0
  256. {osn_selenium-1.0.0.dist-info → osn_selenium-1.2.0.dist-info}/WHEEL +1 -1
  257. osn_selenium/abstract/executors/cdp/__init__.py +0 -435
  258. osn_selenium/abstract/executors/cdp/accessibility.py +0 -62
  259. osn_selenium/abstract/executors/cdp/animation.py +0 -47
  260. osn_selenium/abstract/executors/cdp/audits.py +0 -39
  261. osn_selenium/abstract/executors/cdp/autofill.py +0 -34
  262. osn_selenium/abstract/executors/cdp/background_service.py +0 -22
  263. osn_selenium/abstract/executors/cdp/bluetooth_emulation.py +0 -95
  264. osn_selenium/abstract/executors/cdp/browser.py +0 -122
  265. osn_selenium/abstract/executors/cdp/cache_storage.py +0 -49
  266. osn_selenium/abstract/executors/cdp/cast.py +0 -31
  267. osn_selenium/abstract/executors/cdp/console.py +0 -18
  268. osn_selenium/abstract/executors/cdp/css.py +0 -197
  269. osn_selenium/abstract/executors/cdp/debugger.py +0 -198
  270. osn_selenium/abstract/executors/cdp/device_access.py +0 -22
  271. osn_selenium/abstract/executors/cdp/device_orientation.py +0 -14
  272. osn_selenium/abstract/executors/cdp/dom.py +0 -305
  273. osn_selenium/abstract/executors/cdp/dom_debugger.py +0 -57
  274. osn_selenium/abstract/executors/cdp/dom_snapshot.py +0 -42
  275. osn_selenium/abstract/executors/cdp/dom_storage.py +0 -31
  276. osn_selenium/abstract/executors/cdp/emulation.py +0 -259
  277. osn_selenium/abstract/executors/cdp/event_breakpoints.py +0 -18
  278. osn_selenium/abstract/executors/cdp/extensions.py +0 -31
  279. osn_selenium/abstract/executors/cdp/fed_cm.py +0 -35
  280. osn_selenium/abstract/executors/cdp/fetch.py +0 -76
  281. osn_selenium/abstract/executors/cdp/file_system.py +0 -11
  282. osn_selenium/abstract/executors/cdp/headless_experimental.py +0 -30
  283. osn_selenium/abstract/executors/cdp/heap_profiler.py +0 -73
  284. osn_selenium/abstract/executors/cdp/indexed_db.py +0 -99
  285. osn_selenium/abstract/executors/cdp/input.py +0 -158
  286. osn_selenium/abstract/executors/cdp/inspector.py +0 -14
  287. osn_selenium/abstract/executors/cdp/io.py +0 -24
  288. osn_selenium/abstract/executors/cdp/layer_tree.py +0 -61
  289. osn_selenium/abstract/executors/cdp/log.py +0 -27
  290. osn_selenium/abstract/executors/cdp/media.py +0 -14
  291. osn_selenium/abstract/executors/cdp/memory.py +0 -61
  292. osn_selenium/abstract/executors/cdp/network.py +0 -252
  293. osn_selenium/abstract/executors/cdp/overlay.py +0 -166
  294. osn_selenium/abstract/executors/cdp/page.py +0 -347
  295. osn_selenium/abstract/executors/cdp/performance.py +0 -28
  296. osn_selenium/abstract/executors/cdp/performance_timeline.py +0 -11
  297. osn_selenium/abstract/executors/cdp/preload.py +0 -14
  298. osn_selenium/abstract/executors/cdp/profiler.py +0 -54
  299. osn_selenium/abstract/executors/cdp/pwa.py +0 -46
  300. osn_selenium/abstract/executors/cdp/runtime.py +0 -176
  301. osn_selenium/abstract/executors/cdp/schema.py +0 -11
  302. osn_selenium/abstract/executors/cdp/security.py +0 -26
  303. osn_selenium/abstract/executors/cdp/service_worker.py +0 -54
  304. osn_selenium/abstract/executors/cdp/storage.py +0 -175
  305. osn_selenium/abstract/executors/cdp/system_info.py +0 -24
  306. osn_selenium/abstract/executors/cdp/target.py +0 -125
  307. osn_selenium/abstract/executors/cdp/tethering.py +0 -14
  308. osn_selenium/abstract/executors/cdp/tracing.py +0 -48
  309. osn_selenium/abstract/executors/cdp/web_audio.py +0 -19
  310. osn_selenium/abstract/executors/cdp/web_authn.py +0 -76
  311. osn_selenium/executors/sync/cdp/__init__.py +0 -550
  312. osn_selenium/executors/sync/cdp/accessibility.py +0 -74
  313. osn_selenium/executors/sync/cdp/animation.py +0 -50
  314. osn_selenium/executors/sync/cdp/audits.py +0 -48
  315. osn_selenium/executors/sync/cdp/autofill.py +0 -39
  316. osn_selenium/executors/sync/cdp/background_service.py +0 -30
  317. osn_selenium/executors/sync/cdp/bluetooth_emulation.py +0 -101
  318. osn_selenium/executors/sync/cdp/browser.py +0 -131
  319. osn_selenium/executors/sync/cdp/cache_storage.py +0 -66
  320. osn_selenium/executors/sync/cdp/cast.py +0 -38
  321. osn_selenium/executors/sync/cdp/console.py +0 -24
  322. osn_selenium/executors/sync/cdp/css.py +0 -187
  323. osn_selenium/executors/sync/cdp/debugger.py +0 -206
  324. osn_selenium/executors/sync/cdp/device_access.py +0 -27
  325. osn_selenium/executors/sync/cdp/device_orientation.py +0 -24
  326. osn_selenium/executors/sync/cdp/dom.py +0 -310
  327. osn_selenium/executors/sync/cdp/dom_debugger.py +0 -56
  328. osn_selenium/executors/sync/cdp/dom_snapshot.py +0 -58
  329. osn_selenium/executors/sync/cdp/dom_storage.py +0 -38
  330. osn_selenium/executors/sync/cdp/emulation.py +0 -270
  331. osn_selenium/executors/sync/cdp/event_breakpoints.py +0 -27
  332. osn_selenium/executors/sync/cdp/extensions.py +0 -39
  333. osn_selenium/executors/sync/cdp/fed_cm.py +0 -45
  334. osn_selenium/executors/sync/cdp/fetch.py +0 -96
  335. osn_selenium/executors/sync/cdp/file_system.py +0 -18
  336. osn_selenium/executors/sync/cdp/headless_experimental.py +0 -44
  337. osn_selenium/executors/sync/cdp/heap_profiler.py +0 -89
  338. osn_selenium/executors/sync/cdp/indexed_db.py +0 -142
  339. osn_selenium/executors/sync/cdp/input.py +0 -233
  340. osn_selenium/executors/sync/cdp/inspector.py +0 -21
  341. osn_selenium/executors/sync/cdp/io.py +0 -33
  342. osn_selenium/executors/sync/cdp/layer_tree.py +0 -71
  343. osn_selenium/executors/sync/cdp/log.py +0 -35
  344. osn_selenium/executors/sync/cdp/media.py +0 -21
  345. osn_selenium/executors/sync/cdp/memory.py +0 -62
  346. osn_selenium/executors/sync/cdp/network.py +0 -287
  347. osn_selenium/executors/sync/cdp/overlay.py +0 -174
  348. osn_selenium/executors/sync/cdp/page.py +0 -365
  349. osn_selenium/executors/sync/cdp/performance.py +0 -33
  350. osn_selenium/executors/sync/cdp/performance_timeline.py +0 -26
  351. osn_selenium/executors/sync/cdp/preload.py +0 -21
  352. osn_selenium/executors/sync/cdp/profiler.py +0 -58
  353. osn_selenium/executors/sync/cdp/pwa.py +0 -55
  354. osn_selenium/executors/sync/cdp/runtime.py +0 -221
  355. osn_selenium/executors/sync/cdp/schema.py +0 -23
  356. osn_selenium/executors/sync/cdp/security.py +0 -30
  357. osn_selenium/executors/sync/cdp/service_worker.py +0 -56
  358. osn_selenium/executors/sync/cdp/storage.py +0 -151
  359. osn_selenium/executors/sync/cdp/system_info.py +0 -30
  360. osn_selenium/executors/sync/cdp/target.py +0 -147
  361. osn_selenium/executors/sync/cdp/tethering.py +0 -21
  362. osn_selenium/executors/sync/cdp/tracing.py +0 -62
  363. osn_selenium/executors/sync/cdp/web_audio.py +0 -24
  364. osn_selenium/executors/sync/cdp/web_authn.py +0 -82
  365. osn_selenium/executors/trio_threads/cdp/__init__.py +0 -771
  366. osn_selenium/executors/trio_threads/cdp/accessibility.py +0 -87
  367. osn_selenium/executors/trio_threads/cdp/animation.py +0 -63
  368. osn_selenium/executors/trio_threads/cdp/audits.py +0 -57
  369. osn_selenium/executors/trio_threads/cdp/autofill.py +0 -52
  370. osn_selenium/executors/trio_threads/cdp/background_service.py +0 -40
  371. osn_selenium/executors/trio_threads/cdp/bluetooth_emulation.py +0 -111
  372. osn_selenium/executors/trio_threads/cdp/browser.py +0 -140
  373. osn_selenium/executors/trio_threads/cdp/cache_storage.py +0 -79
  374. osn_selenium/executors/trio_threads/cdp/cast.py +0 -47
  375. osn_selenium/executors/trio_threads/cdp/console.py +0 -33
  376. osn_selenium/executors/trio_threads/cdp/css.py +0 -196
  377. osn_selenium/executors/trio_threads/cdp/debugger.py +0 -219
  378. osn_selenium/executors/trio_threads/cdp/device_access.py +0 -40
  379. osn_selenium/executors/trio_threads/cdp/device_orientation.py +0 -34
  380. osn_selenium/executors/trio_threads/cdp/dom.py +0 -319
  381. osn_selenium/executors/trio_threads/cdp/dom_debugger.py +0 -69
  382. osn_selenium/executors/trio_threads/cdp/dom_snapshot.py +0 -71
  383. osn_selenium/executors/trio_threads/cdp/dom_storage.py +0 -51
  384. osn_selenium/executors/trio_threads/cdp/emulation.py +0 -283
  385. osn_selenium/executors/trio_threads/cdp/event_breakpoints.py +0 -37
  386. osn_selenium/executors/trio_threads/cdp/extensions.py +0 -52
  387. osn_selenium/executors/trio_threads/cdp/fed_cm.py +0 -54
  388. osn_selenium/executors/trio_threads/cdp/fetch.py +0 -105
  389. osn_selenium/executors/trio_threads/cdp/file_system.py +0 -31
  390. osn_selenium/executors/trio_threads/cdp/headless_experimental.py +0 -54
  391. osn_selenium/executors/trio_threads/cdp/heap_profiler.py +0 -102
  392. osn_selenium/executors/trio_threads/cdp/indexed_db.py +0 -155
  393. osn_selenium/executors/trio_threads/cdp/input.py +0 -242
  394. osn_selenium/executors/trio_threads/cdp/inspector.py +0 -34
  395. osn_selenium/executors/trio_threads/cdp/io.py +0 -42
  396. osn_selenium/executors/trio_threads/cdp/layer_tree.py +0 -84
  397. osn_selenium/executors/trio_threads/cdp/log.py +0 -44
  398. osn_selenium/executors/trio_threads/cdp/media.py +0 -30
  399. osn_selenium/executors/trio_threads/cdp/memory.py +0 -71
  400. osn_selenium/executors/trio_threads/cdp/network.py +0 -296
  401. osn_selenium/executors/trio_threads/cdp/overlay.py +0 -183
  402. osn_selenium/executors/trio_threads/cdp/page.py +0 -374
  403. osn_selenium/executors/trio_threads/cdp/performance.py +0 -46
  404. osn_selenium/executors/trio_threads/cdp/performance_timeline.py +0 -36
  405. osn_selenium/executors/trio_threads/cdp/preload.py +0 -30
  406. osn_selenium/executors/trio_threads/cdp/profiler.py +0 -71
  407. osn_selenium/executors/trio_threads/cdp/pwa.py +0 -64
  408. osn_selenium/executors/trio_threads/cdp/runtime.py +0 -230
  409. osn_selenium/executors/trio_threads/cdp/schema.py +0 -32
  410. osn_selenium/executors/trio_threads/cdp/security.py +0 -43
  411. osn_selenium/executors/trio_threads/cdp/service_worker.py +0 -69
  412. osn_selenium/executors/trio_threads/cdp/storage.py +0 -162
  413. osn_selenium/executors/trio_threads/cdp/system_info.py +0 -43
  414. osn_selenium/executors/trio_threads/cdp/target.py +0 -156
  415. osn_selenium/executors/trio_threads/cdp/tethering.py +0 -34
  416. osn_selenium/executors/trio_threads/cdp/tracing.py +0 -71
  417. osn_selenium/executors/trio_threads/cdp/web_audio.py +0 -37
  418. osn_selenium/executors/trio_threads/cdp/web_authn.py +0 -95
  419. osn_selenium/executors/unified/cdp/accessibility.py +0 -81
  420. osn_selenium/executors/unified/cdp/animation.py +0 -50
  421. osn_selenium/executors/unified/cdp/audits.py +0 -45
  422. osn_selenium/executors/unified/cdp/autofill.py +0 -41
  423. osn_selenium/executors/unified/cdp/background_service.py +0 -24
  424. osn_selenium/executors/unified/cdp/bluetooth_emulation.py +0 -132
  425. osn_selenium/executors/unified/cdp/browser.py +0 -143
  426. osn_selenium/executors/unified/cdp/cache_storage.py +0 -69
  427. osn_selenium/executors/unified/cdp/cast.py +0 -32
  428. osn_selenium/executors/unified/cdp/console.py +0 -18
  429. osn_selenium/executors/unified/cdp/css.py +0 -237
  430. osn_selenium/executors/unified/cdp/debugger.py +0 -243
  431. osn_selenium/executors/unified/cdp/device_access.py +0 -21
  432. osn_selenium/executors/unified/cdp/device_orientation.py +0 -18
  433. osn_selenium/executors/unified/cdp/dom.py +0 -380
  434. osn_selenium/executors/unified/cdp/dom_debugger.py +0 -65
  435. osn_selenium/executors/unified/cdp/dom_snapshot.py +0 -58
  436. osn_selenium/executors/unified/cdp/dom_storage.py +0 -38
  437. osn_selenium/executors/unified/cdp/emulation.py +0 -312
  438. osn_selenium/executors/unified/cdp/event_breakpoints.py +0 -24
  439. osn_selenium/executors/unified/cdp/extensions.py +0 -45
  440. osn_selenium/executors/unified/cdp/fed_cm.py +0 -51
  441. osn_selenium/executors/unified/cdp/fetch.py +0 -111
  442. osn_selenium/executors/unified/cdp/file_system.py +0 -15
  443. osn_selenium/executors/unified/cdp/headless_experimental.py +0 -38
  444. osn_selenium/executors/unified/cdp/heap_profiler.py +0 -101
  445. osn_selenium/executors/unified/cdp/indexed_db.py +0 -157
  446. osn_selenium/executors/unified/cdp/input.py +0 -254
  447. osn_selenium/executors/unified/cdp/inspector.py +0 -15
  448. osn_selenium/executors/unified/cdp/io.py +0 -29
  449. osn_selenium/executors/unified/cdp/layer_tree.py +0 -71
  450. osn_selenium/executors/unified/cdp/log.py +0 -29
  451. osn_selenium/executors/unified/cdp/media.py +0 -15
  452. osn_selenium/executors/unified/cdp/memory.py +0 -59
  453. osn_selenium/executors/unified/cdp/network.py +0 -323
  454. osn_selenium/executors/unified/cdp/overlay.py +0 -209
  455. osn_selenium/executors/unified/cdp/page.py +0 -410
  456. osn_selenium/executors/unified/cdp/performance.py +0 -27
  457. osn_selenium/executors/unified/cdp/performance_timeline.py +0 -17
  458. osn_selenium/executors/unified/cdp/preload.py +0 -15
  459. osn_selenium/executors/unified/cdp/profiler.py +0 -55
  460. osn_selenium/executors/unified/cdp/pwa.py +0 -55
  461. osn_selenium/executors/unified/cdp/runtime.py +0 -245
  462. osn_selenium/executors/unified/cdp/schema.py +0 -17
  463. osn_selenium/executors/unified/cdp/security.py +0 -27
  464. osn_selenium/executors/unified/cdp/service_worker.py +0 -62
  465. osn_selenium/executors/unified/cdp/storage.py +0 -178
  466. osn_selenium/executors/unified/cdp/system_info.py +0 -24
  467. osn_selenium/executors/unified/cdp/target.py +0 -165
  468. osn_selenium/executors/unified/cdp/tethering.py +0 -15
  469. osn_selenium/executors/unified/cdp/tracing.py +0 -62
  470. osn_selenium/executors/unified/cdp/web_audio.py +0 -18
  471. osn_selenium/executors/unified/cdp/web_authn.py +0 -103
  472. osn_selenium-1.0.0.dist-info/RECORD +0 -608
  473. /osn_selenium/{dev_tools/_exception_helpers.py → _exception_helpers.py} +0 -0
  474. /osn_selenium/executors/{unified/cdp → trio_bidi}/__init__.py +0 -0
  475. {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