crawlee 0.6.13b17__py3-none-any.whl → 1.1.2b7__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.

Potentially problematic release.


This version of crawlee might be problematic. Click here for more details.

Files changed (102) hide show
  1. crawlee/_autoscaling/snapshotter.py +1 -1
  2. crawlee/_request.py +35 -33
  3. crawlee/_service_locator.py +44 -24
  4. crawlee/_types.py +106 -34
  5. crawlee/_utils/context.py +2 -2
  6. crawlee/_utils/file.py +7 -0
  7. crawlee/_utils/raise_if_too_many_kwargs.py +12 -0
  8. crawlee/_utils/recoverable_state.py +32 -8
  9. crawlee/_utils/recurring_task.py +17 -1
  10. crawlee/_utils/requests.py +0 -26
  11. crawlee/_utils/robots.py +17 -5
  12. crawlee/_utils/sitemap.py +4 -2
  13. crawlee/_utils/system.py +3 -3
  14. crawlee/_utils/time.py +120 -0
  15. crawlee/_utils/urls.py +9 -2
  16. crawlee/browsers/_browser_pool.py +4 -1
  17. crawlee/browsers/_playwright_browser_controller.py +21 -15
  18. crawlee/browsers/_playwright_browser_plugin.py +17 -3
  19. crawlee/browsers/_types.py +1 -1
  20. crawlee/configuration.py +2 -0
  21. crawlee/crawlers/__init__.py +2 -1
  22. crawlee/crawlers/_abstract_http/__init__.py +2 -1
  23. crawlee/crawlers/_abstract_http/_abstract_http_crawler.py +50 -12
  24. crawlee/crawlers/_abstract_http/_abstract_http_parser.py +1 -1
  25. crawlee/crawlers/_abstract_http/_http_crawling_context.py +1 -1
  26. crawlee/crawlers/_adaptive_playwright/_adaptive_playwright_crawler.py +39 -15
  27. crawlee/crawlers/_adaptive_playwright/_adaptive_playwright_crawler_statistics.py +1 -1
  28. crawlee/crawlers/_adaptive_playwright/_adaptive_playwright_crawling_context.py +8 -3
  29. crawlee/crawlers/_adaptive_playwright/_rendering_type_predictor.py +1 -1
  30. crawlee/crawlers/_basic/_basic_crawler.py +219 -126
  31. crawlee/crawlers/_basic/_logging_utils.py +5 -1
  32. crawlee/crawlers/_beautifulsoup/_beautifulsoup_crawler.py +2 -2
  33. crawlee/crawlers/_parsel/_parsel_crawler.py +2 -2
  34. crawlee/crawlers/_playwright/_playwright_crawler.py +60 -11
  35. crawlee/crawlers/_playwright/_playwright_http_client.py +7 -1
  36. crawlee/crawlers/_playwright/_playwright_pre_nav_crawling_context.py +4 -1
  37. crawlee/crawlers/_playwright/_types.py +12 -2
  38. crawlee/events/_event_manager.py +4 -4
  39. crawlee/events/_types.py +6 -6
  40. crawlee/fingerprint_suite/_fingerprint_generator.py +3 -0
  41. crawlee/fingerprint_suite/_header_generator.py +2 -2
  42. crawlee/fingerprint_suite/_types.py +2 -2
  43. crawlee/http_clients/_base.py +4 -0
  44. crawlee/http_clients/_curl_impersonate.py +12 -0
  45. crawlee/http_clients/_httpx.py +16 -6
  46. crawlee/http_clients/_impit.py +25 -10
  47. crawlee/otel/crawler_instrumentor.py +3 -3
  48. crawlee/project_template/{{cookiecutter.project_name}}/pyproject.toml +2 -2
  49. crawlee/project_template/{{cookiecutter.project_name}}/requirements.txt +3 -0
  50. crawlee/request_loaders/_request_list.py +3 -3
  51. crawlee/request_loaders/_request_loader.py +5 -1
  52. crawlee/request_loaders/_sitemap_request_loader.py +248 -50
  53. crawlee/sessions/_models.py +2 -2
  54. crawlee/sessions/_session_pool.py +1 -1
  55. crawlee/statistics/_error_snapshotter.py +1 -1
  56. crawlee/statistics/_models.py +43 -4
  57. crawlee/statistics/_statistics.py +24 -33
  58. crawlee/storage_clients/__init__.py +16 -0
  59. crawlee/storage_clients/_base/_request_queue_client.py +2 -2
  60. crawlee/storage_clients/_base/_storage_client.py +13 -0
  61. crawlee/storage_clients/_file_system/_dataset_client.py +29 -27
  62. crawlee/storage_clients/_file_system/_key_value_store_client.py +30 -26
  63. crawlee/storage_clients/_file_system/_request_queue_client.py +169 -153
  64. crawlee/storage_clients/_file_system/_storage_client.py +16 -3
  65. crawlee/storage_clients/_file_system/_utils.py +0 -0
  66. crawlee/storage_clients/_memory/_dataset_client.py +16 -4
  67. crawlee/storage_clients/_memory/_key_value_store_client.py +16 -4
  68. crawlee/storage_clients/_memory/_request_queue_client.py +55 -36
  69. crawlee/storage_clients/_memory/_storage_client.py +6 -3
  70. crawlee/storage_clients/_redis/__init__.py +6 -0
  71. crawlee/storage_clients/_redis/_client_mixin.py +295 -0
  72. crawlee/storage_clients/_redis/_dataset_client.py +325 -0
  73. crawlee/storage_clients/_redis/_key_value_store_client.py +264 -0
  74. crawlee/storage_clients/_redis/_request_queue_client.py +586 -0
  75. crawlee/storage_clients/_redis/_storage_client.py +146 -0
  76. crawlee/storage_clients/_redis/_utils.py +23 -0
  77. crawlee/storage_clients/_redis/lua_scripts/atomic_bloom_add_requests.lua +36 -0
  78. crawlee/storage_clients/_redis/lua_scripts/atomic_fetch_request.lua +49 -0
  79. crawlee/storage_clients/_redis/lua_scripts/atomic_set_add_requests.lua +37 -0
  80. crawlee/storage_clients/_redis/lua_scripts/reclaim_stale_requests.lua +34 -0
  81. crawlee/storage_clients/_redis/py.typed +0 -0
  82. crawlee/storage_clients/_sql/__init__.py +6 -0
  83. crawlee/storage_clients/_sql/_client_mixin.py +385 -0
  84. crawlee/storage_clients/_sql/_dataset_client.py +310 -0
  85. crawlee/storage_clients/_sql/_db_models.py +268 -0
  86. crawlee/storage_clients/_sql/_key_value_store_client.py +300 -0
  87. crawlee/storage_clients/_sql/_request_queue_client.py +720 -0
  88. crawlee/storage_clients/_sql/_storage_client.py +282 -0
  89. crawlee/storage_clients/_sql/py.typed +0 -0
  90. crawlee/storage_clients/models.py +13 -11
  91. crawlee/storages/_base.py +5 -1
  92. crawlee/storages/_dataset.py +12 -2
  93. crawlee/storages/_key_value_store.py +17 -4
  94. crawlee/storages/_request_queue.py +13 -5
  95. crawlee/storages/_storage_instance_manager.py +133 -71
  96. crawlee/storages/_utils.py +11 -0
  97. {crawlee-0.6.13b17.dist-info → crawlee-1.1.2b7.dist-info}/METADATA +18 -6
  98. {crawlee-0.6.13b17.dist-info → crawlee-1.1.2b7.dist-info}/RECORD +101 -78
  99. {crawlee-0.6.13b17.dist-info → crawlee-1.1.2b7.dist-info}/WHEEL +1 -1
  100. crawlee/_utils/measure_time.py +0 -31
  101. {crawlee-0.6.13b17.dist-info → crawlee-1.1.2b7.dist-info}/entry_points.txt +0 -0
  102. {crawlee-0.6.13b17.dist-info → crawlee-1.1.2b7.dist-info}/licenses/LICENSE +0 -0
@@ -3,10 +3,10 @@ crawlee/_browserforge_workaround.py,sha256=FYQaqpqfZGYkx-A8evF9nsHnj4KK4IMtjNq3L
3
3
  crawlee/_cli.py,sha256=czuEsGD8QYEiq5gtMcBxrL08hQ5OJQQkMVhAr1pvDaQ,10353
4
4
  crawlee/_consts.py,sha256=RQ96gx7V-WPH91cVsMUz76X5UZUNDNhCudtlyGkxFVk,133
5
5
  crawlee/_log_config.py,sha256=VyxoEfWCq_9fyicmmJbjiZ5KC91onMcAtX2L4oKX4m4,5999
6
- crawlee/_request.py,sha256=4QZFeApCGhHuT2TCAnjG2kfxpsLCTEAhdDerK3IQmYM,16331
7
- crawlee/_service_locator.py,sha256=p5LIM0rQ9dMJsEOVAabA4cTzXzRv5h0V-ebEnXO2oLs,4024
8
- crawlee/_types.py,sha256=iGlOI0Kt0RWLviA6SExZ6aFTSXjthtWWa4mQrX53y74,26015
9
- crawlee/configuration.py,sha256=YNFHR47N0X52EwPsp-PSw40YahVvM9YxTYfegV1lOjg,7893
6
+ crawlee/_request.py,sha256=fnUofyFMV3HJwfcLjYr2BCZ5K9mEwl6vZd8Pr309wCE,16458
7
+ crawlee/_service_locator.py,sha256=SJ8ABYtclBl7rz8kfZ2jZkIgKq5oNIoGT7WmN8ApTzo,5058
8
+ crawlee/_types.py,sha256=93yoGr_KqMDIkq3__3QYpIAJmEzZvDoilHAF7_X4J4A,29933
9
+ crawlee/configuration.py,sha256=DWS2z1FC6Ua93W2tStK3R1ZKZbZjVQYWGiGFbZFaRtA,8064
10
10
  crawlee/errors.py,sha256=RhFNA_uT615nVBHf9TylpX5YWwtDuHUUEV8LPT4CYa4,3878
11
11
  crawlee/proxy_configuration.py,sha256=rqf67yerXvLvraBaAHW04nvf5ECze3wMQbK7LlqXucM,10386
12
12
  crawlee/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -15,62 +15,63 @@ crawlee/_autoscaling/__init__.py,sha256=t6Z44gU488C0UmkBCTtwsgAR8iqJcv2g4ZlC4NYh
15
15
  crawlee/_autoscaling/_types.py,sha256=xnrRHXYOVn7GwELLVHi_y7B-Ic7u3hPkYl3P-LT3Fhk,5453
16
16
  crawlee/_autoscaling/autoscaled_pool.py,sha256=Bcu2jDgK2SYMnZN5xfjs8Oxti0ZxrktjydWv3J0Hz48,12214
17
17
  crawlee/_autoscaling/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
18
- crawlee/_autoscaling/snapshotter.py,sha256=tVkvkgQ8jRiH9aPiNN9LK48VxTMpWCpr-sE0KGxDkzk,17734
18
+ crawlee/_autoscaling/snapshotter.py,sha256=DjP-D_M4qJ2lg_j6NhpWIzAUNDFYZf0KYIJPY-3qlA8,17744
19
19
  crawlee/_autoscaling/system_status.py,sha256=oxxEuFXAjJ5gyzT6r4MEnevRIIHoiH5YGuZnAyFtVXA,9444
20
20
  crawlee/_utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
21
21
  crawlee/_utils/blocked.py,sha256=sxN99AouFXMoe6uG1EvCTCmKMGk73DBMUk9nOkWK86I,863
22
22
  crawlee/_utils/byte_size.py,sha256=zs4qWUEDgTGDqYfUJ7t5edWNYYJCG8Y1EyJ9GASfRL4,3744
23
23
  crawlee/_utils/console.py,sha256=vAIM8AO7cT-HdXg44eR8zQyHAHk8X8G7J1KKFCBL2LY,2242
24
- crawlee/_utils/context.py,sha256=FsRh394RpNZTRovuVHVlyVTZ8AbSLGe-K7RpLgU9AX8,1726
24
+ crawlee/_utils/context.py,sha256=LFIXjJQBhv94j1prbK-2yjH3EXg5jPOfVqW8P6cwNIY,1726
25
25
  crawlee/_utils/crypto.py,sha256=tYzn2z91KgV3ugxz4CKtSTcCjW-3FC8un7hpDNCl6rs,757
26
26
  crawlee/_utils/docs.py,sha256=S09-3xAQAlUvrmPpBXVJpE8wblB8LtS6QduLNncfqdQ,1130
27
- crawlee/_utils/file.py,sha256=sGcGsV9zOJ-fKsMuYV_xwTRkOqoEiHVCqPpbprho5t4,5282
27
+ crawlee/_utils/file.py,sha256=FJHTC25qSWQs3ZhCZrLgs0cUwA9K81MlQRGEmcWKAQU,5758
28
28
  crawlee/_utils/globs.py,sha256=SGX2J35Kqw7yZnSS5c4mLz9UD8c77PF0IoCgXQM5uiw,5310
29
29
  crawlee/_utils/html_to_text.py,sha256=1iykT-OXd2xXNy7isHVWHqPxe23X82CGQBHIfbZbZkY,902
30
- crawlee/_utils/measure_time.py,sha256=LYxamHPxd1a9IBWfdgknh2pTfbaz7kiscqcfO6h_-iQ,780
31
30
  crawlee/_utils/models.py,sha256=EqM50Uc-xvxKlLCLA2lPpRduzfKvT0z_-Q-UWG8aTRQ,1955
32
- crawlee/_utils/recoverable_state.py,sha256=_88kOEDDRg1lr6RWs7NNDku6NNRlg7zuzUOoUxwMwGk,7734
33
- crawlee/_utils/recurring_task.py,sha256=sA0n4Cf9pYLQyBD9PZ7QbR6m6KphlbkACaT2GdbLfs4,1757
34
- crawlee/_utils/requests.py,sha256=clMHp7ueDXZBqdO9-rpHTosiGLoamVVhAr8AKXZUGs4,5945
35
- crawlee/_utils/robots.py,sha256=k3Yi2OfKT0H04MPkP-OBGGV7fEePgOqb60awltjMYWY,4346
36
- crawlee/_utils/sitemap.py,sha256=Vp1WntCCWS1_a9xd7_1K5uQEoEGnClqcEJ1oYbIyyDE,16552
37
- crawlee/_utils/system.py,sha256=5XiW5DSCGoRf27R2Ow7svPWpj0fdefV88ZqUiR5ecJk,4222
31
+ crawlee/_utils/raise_if_too_many_kwargs.py,sha256=J2gaUJmsmNwexohuehXw_mdYKv-eWiui6WUHFsQ3qTQ,597
32
+ crawlee/_utils/recoverable_state.py,sha256=c1D2ZecxEliGZzhqYz9_oU5CF2Hm0UKvpOHqO6CDJRE,9032
33
+ crawlee/_utils/recurring_task.py,sha256=_injmSsvG4p0xS4nBtoZZIR02syBG8JcLkuwgNDL8Nc,2143
34
+ crawlee/_utils/requests.py,sha256=yOjai7bHR9_duPJ0ck-L76y9AnKZr49JBfSOQv9kvJc,5048
35
+ crawlee/_utils/robots.py,sha256=DBU5ni4Y-p7bIKMbLd_ws8wgHSFc4K8zPVF3JvH_pkw,4661
36
+ crawlee/_utils/sitemap.py,sha256=UI9EJiFiyFvV5_flVUtdsEVz8ZsJeRERPtcx8ZsqjTU,16632
37
+ crawlee/_utils/system.py,sha256=tA8AP__9vsJ9OTLTnAYAKkxc8U5-IEna0N_hqYBybUo,4294
38
+ crawlee/_utils/time.py,sha256=awyzUqMvoC3BrEDINHaGPaM-u98AW0UtQqQsVJPAnsA,3899
38
39
  crawlee/_utils/try_import.py,sha256=QI_58ifc2l0Rxehzu6xcofQrRAVeLzZuBTTTHttLl8s,1310
39
- crawlee/_utils/urls.py,sha256=NN27TA6KMU5V_j5TCZ4o33UIXw4pB9a-wGlmDQtYT8E,1294
40
+ crawlee/_utils/urls.py,sha256=fEYXJxBT02f-DIYKF_h7PdaKAShfXBs99-dHDjDX03A,1725
40
41
  crawlee/_utils/wait.py,sha256=RfiXhp5VUBxOEtEMtru7_jNfKDr2BJCcFge5qGg2gxk,2848
41
42
  crawlee/_utils/web.py,sha256=nnKhg8pUSWz0RY64Qd-_GPNBX1fWI2hXS-gzcfQ-rig,364
42
43
  crawlee/browsers/__init__.py,sha256=TghkrNSbI_k87UgVBlgNNcEm8Ot05pSLEAPRSv6YsUs,1064
43
44
  crawlee/browsers/_browser_controller.py,sha256=-g0pB5Nx5q67eMZVka49x-HMfQqJYoI6kcV-g3AXE0I,3068
44
45
  crawlee/browsers/_browser_plugin.py,sha256=Wuojop___8ZO9eDoMs4JFmwMAFe5mZaTl0-Vz1PjkD8,3057
45
- crawlee/browsers/_browser_pool.py,sha256=2pT4m_g0DfopjTHYXb-piN6GqxvkayOeb4gmOtn1QNM,15634
46
+ crawlee/browsers/_browser_pool.py,sha256=n1GTVS220yxo-aMaKDVfQO571_AqEV5pMawWbr0zUHk,15832
46
47
  crawlee/browsers/_playwright_browser.py,sha256=1yXD6cXuLefZZGUG1m0CT38xXYSwIC7n95bJBdMOxbo,3820
47
- crawlee/browsers/_playwright_browser_controller.py,sha256=IJ6UGD7n99WmyvDCc4RbjURfdAay_R9ymqPbcI2f4Q8,9764
48
- crawlee/browsers/_playwright_browser_plugin.py,sha256=axZa_yZNCPHyM3Ijx9jW4CzzRXQTVzYAswcGAZHP3Hk,8106
49
- crawlee/browsers/_types.py,sha256=eWgpoLMWu103hMQQTObkA01sVc_7hdPESl-TCyDMMV0,426
48
+ crawlee/browsers/_playwright_browser_controller.py,sha256=W6G5MjZpg9IcZoHts6lTML5VxSEpBTgzx5qeQ8XDigY,10216
49
+ crawlee/browsers/_playwright_browser_plugin.py,sha256=A1qa1nJhTSKNP9uOiO-oGzR7VGlnOMo0A0YNedccb2A,8869
50
+ crawlee/browsers/_types.py,sha256=ZnDgJHeQNSd_s_mXhgQnAf09c2smuiXC31VbawHHXUM,436
50
51
  crawlee/browsers/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
51
- crawlee/crawlers/__init__.py,sha256=9VmFahav3rjE-2Bxa5PAhBgkYXP0k5SSAEpdG2xMZ7c,2340
52
+ crawlee/crawlers/__init__.py,sha256=jNFMsPizSgCN0ARYSmHs9Ppk8yvGgjUH5PxUeDchljE,2386
52
53
  crawlee/crawlers/_types.py,sha256=xbGTJQirgz5wUbfr12afMR4q-_5AWP7ngF2e8K5P8l0,355
53
54
  crawlee/crawlers/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
54
- crawlee/crawlers/_abstract_http/__init__.py,sha256=QCjn8x7jpo8FwEeSRw10TVj_0La2v9mLEiQWdk2RoTw,273
55
- crawlee/crawlers/_abstract_http/_abstract_http_crawler.py,sha256=mR469xTqTEluLrrEf4SZ5buWsirx-mn94Z1Db8FsJqA,11494
56
- crawlee/crawlers/_abstract_http/_abstract_http_parser.py,sha256=pMcxTo-VTY6csa12Zvyab_5s8lNKvsVlzl3YiBTcHU0,3521
57
- crawlee/crawlers/_abstract_http/_http_crawling_context.py,sha256=PV5nUMG1yefMT-ZMiY9H_nPl5WYXWmCWR26r79xaeH0,2179
55
+ crawlee/crawlers/_abstract_http/__init__.py,sha256=h8jVWcPbDXzWHill1Vm7J7iliJW0hIrea0gkg-Hkb-M,319
56
+ crawlee/crawlers/_abstract_http/_abstract_http_crawler.py,sha256=AfrEea3Ez2RvS6G6BFBfB6gg9aAFu-84RWqWryNHFrc,12977
57
+ crawlee/crawlers/_abstract_http/_abstract_http_parser.py,sha256=Y5o_hiW_0mQAte5GFqkUxscwKEFpWrBYRsLKP1cfBwE,3521
58
+ crawlee/crawlers/_abstract_http/_http_crawling_context.py,sha256=Rno_uJ8ivmyRxFQv2MyY_z9B5WPHSEd5MAPz31_1ZIo,2179
58
59
  crawlee/crawlers/_abstract_http/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
59
60
  crawlee/crawlers/_adaptive_playwright/__init__.py,sha256=LREq9WR9BKsE8S8lSsEhlCoNjQaLhlJ9yo8y_6a8o4c,1072
60
- crawlee/crawlers/_adaptive_playwright/_adaptive_playwright_crawler.py,sha256=Iqnd0XxflcIswR3IQQ0TfMDt1j2WPjrpo_PxWrqzJdA,21450
61
- crawlee/crawlers/_adaptive_playwright/_adaptive_playwright_crawler_statistics.py,sha256=_T6z2izdKJdgaHSY9Hrt7mkQQOaT60HX3LwrtLVyk7E,1024
62
- crawlee/crawlers/_adaptive_playwright/_adaptive_playwright_crawling_context.py,sha256=TsTYJjDwAGkpu_UpP6XB8SMYvX13O9AVDXZDBiZb6NM,10426
63
- crawlee/crawlers/_adaptive_playwright/_rendering_type_predictor.py,sha256=JtS67UTCY9pK5ZKmKjfoQMPu9ITFNlE2SRz5sJPSv54,10810
61
+ crawlee/crawlers/_adaptive_playwright/_adaptive_playwright_crawler.py,sha256=nPFB9Q_3xQDJprb24NIQO53gf56J8wXjbM9C-58iiZ8,22862
62
+ crawlee/crawlers/_adaptive_playwright/_adaptive_playwright_crawler_statistics.py,sha256=_At8T8S3JLGPA-1AeCFGrpE-FuCDW9sazrXt9U0tK6U,1048
63
+ crawlee/crawlers/_adaptive_playwright/_adaptive_playwright_crawling_context.py,sha256=tejw-yfA8zVR8L-shIZOTFoMUQOI5Kt7FBJa8H0q4H0,10664
64
+ crawlee/crawlers/_adaptive_playwright/_rendering_type_predictor.py,sha256=TM4mkbIN_059jUyCG8Z6XAb_FBLClIKw7z-aDvjon2I,10834
64
65
  crawlee/crawlers/_adaptive_playwright/_result_comparator.py,sha256=NAfw5VKzTnkvARtLr_zrZj6UGeMp05Voc6Oi8oPxU3w,1747
65
66
  crawlee/crawlers/_adaptive_playwright/_utils.py,sha256=EUYVz5i2YkLpL_gbVRp9BAD5u6w1xJ_AFzc_qB9bdDQ,1102
66
67
  crawlee/crawlers/_basic/__init__.py,sha256=LPln8SiBBXSMqrApiFUfpqz3hvqxN5HUa1cHQXMVKgU,280
67
- crawlee/crawlers/_basic/_basic_crawler.py,sha256=eqkyIa1omc36WwFu03YZQbaKQopmevg9lsMmlIg2d3k,69088
68
+ crawlee/crawlers/_basic/_basic_crawler.py,sha256=uL9QDGis__8z0W0u6ShsJMpvlrMmIi3MaucOvIxh0iI,73437
68
69
  crawlee/crawlers/_basic/_basic_crawling_context.py,sha256=fjxm2RQXMDkDlWu38dQ3xn5rrGUOhJXkXiqkgbFJFk4,155
69
70
  crawlee/crawlers/_basic/_context_pipeline.py,sha256=vM8EEvnCoguERjRV3oyrxUq2Ln2F9DzY7P5dAEiuMHo,5869
70
- crawlee/crawlers/_basic/_logging_utils.py,sha256=hpEcP1eo5SwHu_G8mymwGDzc4mbHGeosPY_Jdlm6r9A,2847
71
+ crawlee/crawlers/_basic/_logging_utils.py,sha256=jp5mEwSq5a_BgzUhNPJ9WrIDcoIeYGbeHstcRqCcP0s,3093
71
72
  crawlee/crawlers/_basic/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
72
73
  crawlee/crawlers/_beautifulsoup/__init__.py,sha256=7pL273ashA7yYDrH6nokYZ7SAMUAezilGIWdfThi_Co,822
73
- crawlee/crawlers/_beautifulsoup/_beautifulsoup_crawler.py,sha256=oLnRN2AMNSKOZDFWMg1jLhRp7_IShkeEwy1O_m1QLm8,3058
74
+ crawlee/crawlers/_beautifulsoup/_beautifulsoup_crawler.py,sha256=Q8Sb_lflpdYIwDZ1fIeuquPzdDG2zCnKsrcj8fe8n6k,3056
74
75
  crawlee/crawlers/_beautifulsoup/_beautifulsoup_crawling_context.py,sha256=CMHQbYmXdhnXSo3hjtmAqWPH2lEaoVHzwPY2Ka85s70,1149
75
76
  crawlee/crawlers/_beautifulsoup/_beautifulsoup_parser.py,sha256=egCBcaE6RaQoJOFuxex_McItCd4Ddd3ZDE-2DVGictA,1661
76
77
  crawlee/crawlers/_beautifulsoup/_utils.py,sha256=xUJM7Y0RGlTEe0TJe252uuIdjk8gwBFjuhQnRG7-jv4,3127
@@ -79,36 +80,36 @@ crawlee/crawlers/_http/__init__.py,sha256=BY6KKY1eD8CWDFfurJDIgcnFIfgXAVuMHKSL3w
79
80
  crawlee/crawlers/_http/_http_crawler.py,sha256=HoCTku4FL9EN3WMlzbZNbb2BtXedP487CN0JlObsoGg,2041
80
81
  crawlee/crawlers/_http/_http_parser.py,sha256=Bfe3TEz6i5UhONO2qfyw2p31QoVoXbvGci3T3HeObiU,1495
81
82
  crawlee/crawlers/_parsel/__init__.py,sha256=c_FveWxCuaEaG2HAYlaN9N_aPEaVdpaYVMsIcCcTdnU,617
82
- crawlee/crawlers/_parsel/_parsel_crawler.py,sha256=8eSq8lNq7wxvY-zFdordKk4q7m3LQ6bVrbLmt_qpRMk,2719
83
+ crawlee/crawlers/_parsel/_parsel_crawler.py,sha256=Aolo96FU_U3nsEjGoxEothgF7pVuoXLkhRmNWgKzGYg,2717
83
84
  crawlee/crawlers/_parsel/_parsel_crawling_context.py,sha256=sZB26RcRLjSoD15myEOMPeolIN7apG76aqRmKQvEep8,1142
84
85
  crawlee/crawlers/_parsel/_parsel_parser.py,sha256=yWBfuXUHMriK4DRnyrXTQoGeqX5WV9bOEkBp_g0YCvQ,1540
85
86
  crawlee/crawlers/_parsel/_utils.py,sha256=MbRwx-cdjlq1zLzFYf64M3spOGQ6yxum4FvP0sdqA_Q,2693
86
87
  crawlee/crawlers/_playwright/__init__.py,sha256=6Cahe6VEF82o8CYiP8Cmp58Cmb6Rb8uMeyy7wnwe5ms,837
87
- crawlee/crawlers/_playwright/_playwright_crawler.py,sha256=YolXcaPahDi2hWYeX5akL-Y0DLdA0TiZfuBQvATVA2M,23449
88
+ crawlee/crawlers/_playwright/_playwright_crawler.py,sha256=Zdfc6gytFrPk0-K3UJWXRVnGrXXUJbWRoekTyD1q13c,26005
88
89
  crawlee/crawlers/_playwright/_playwright_crawling_context.py,sha256=Oi0tMBXHaEDlFjqG01DzgB7Ck52bjVjz-X__eMioxas,1249
89
- crawlee/crawlers/_playwright/_playwright_http_client.py,sha256=Nfm69dqX85k68jN1p3ljZWbn8egqDWPIPRykXyXsoQs,3977
90
- crawlee/crawlers/_playwright/_playwright_pre_nav_crawling_context.py,sha256=fEI2laWhmJdWiGoMF5JBLBsim9NtENfagZt6FFd2Rgo,1387
91
- crawlee/crawlers/_playwright/_types.py,sha256=hMKA9K9gjzQuwwbnmmfJsQrwR-kq235jH-WBXWeqkGo,2174
90
+ crawlee/crawlers/_playwright/_playwright_http_client.py,sha256=4mvaCI9Zum7znbm0F-ZZ6T1FEqZ-N-cvPOk1iqtcUSo,4164
91
+ crawlee/crawlers/_playwright/_playwright_pre_nav_crawling_context.py,sha256=NFenJKgXcPuifaVYc2sdU5AV2BX6836GUuqFTE2Q0lU,1545
92
+ crawlee/crawlers/_playwright/_types.py,sha256=D4MaRWgYdps1CwgNWURJRLKkJk_9Oyue70jvkHAxnEU,2534
92
93
  crawlee/crawlers/_playwright/_utils.py,sha256=FQ_-LYo7DGHsNHRrTtWt3mC06VzQvQ2wkGqpA2wBzYU,3441
93
94
  crawlee/events/__init__.py,sha256=YMgOXKI0LsXfImKQy06PZ2Vdjy-uD_-acioagHft1do,577
94
- crawlee/events/_event_manager.py,sha256=kP5_zO2JmFReWnCZqg_uSS1kSV4reem2XN3oRY-SGcI,11428
95
+ crawlee/events/_event_manager.py,sha256=M8nKPc2BJo8RIBVHaG9BYuks0jwt5v3BFYQLA7IvolI,11380
95
96
  crawlee/events/_local_event_manager.py,sha256=CSiMJ6a_BwX0PPwtffEOtHm21dmALJz1zifo3AuMAk8,3708
96
- crawlee/events/_types.py,sha256=enxcdQOD9afcGXGI9cxzDBuvAmUIHmLvxlh8n-XMqeY,3169
97
+ crawlee/events/_types.py,sha256=MKsI014OOKKhjPJRrvWYrezIDGoLjGGhWXrkqYw26Ns,3313
97
98
  crawlee/events/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
98
99
  crawlee/fingerprint_suite/__init__.py,sha256=noY9qw80B0seZGj_B3bBvCDIDk2YWOSN-llIssLdY5c,550
99
100
  crawlee/fingerprint_suite/_browserforge_adapter.py,sha256=bsGebBjjHawM-FiINgqkZW5I9a9Fnv3SGwdKgaVWiRI,11934
100
101
  crawlee/fingerprint_suite/_consts.py,sha256=SgykWfxD-pYvOpRp_ooQ4ZTPS0sQ2b3wDyyCjwU_8-w,258
101
- crawlee/fingerprint_suite/_fingerprint_generator.py,sha256=9UIsx_1mq3ixwcMk3mCRT8GkKueHUTABVlqvWcq1zq0,665
102
- crawlee/fingerprint_suite/_header_generator.py,sha256=GMveKjVRsfyt_iq0Cvif98D7pFiPryPD0-zQ7efE8j8,3491
103
- crawlee/fingerprint_suite/_types.py,sha256=jTeIAQME5HjO9LLeF5MQQWpTkuGgm1aQOvkrBL5EH4M,2375
102
+ crawlee/fingerprint_suite/_fingerprint_generator.py,sha256=Di4sDk1qioiFGx4ZcoVyHhtFHF8JXDhxQt8ZPug99k8,730
103
+ crawlee/fingerprint_suite/_header_generator.py,sha256=9X9FbStehXdw-FZc_D0y-nLk1BUHXVYFxs7fv4dl9zU,3513
104
+ crawlee/fingerprint_suite/_types.py,sha256=7n2LJTiL2XvL-H4G-Y26Uoq5-ZXzH07Dq4o50uhMa-w,2423
104
105
  crawlee/fingerprint_suite/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
105
106
  crawlee/http_clients/__init__.py,sha256=OQFhR9F8BrdlIaS5aRS7hvgQ0tKJPQ8FiyYPualyQcU,890
106
- crawlee/http_clients/_base.py,sha256=kbIAVTWLBJboN3zRolAla-2g7mvK-3iWKc5YmIif0FY,7377
107
- crawlee/http_clients/_curl_impersonate.py,sha256=EBaoJZzBDgsfhLRgZwu-mFzKqFJ8BDF1lEGQtujeOOs,11321
108
- crawlee/http_clients/_httpx.py,sha256=pMVyL5P1UU49svqRr7hqcxInIuT4MT3R7UBmkJ07xMc,11780
109
- crawlee/http_clients/_impit.py,sha256=nGSe5NuZmsJjQzsfUGIZdbZFC48_Gpu8aU3I8kpq6O4,8833
107
+ crawlee/http_clients/_base.py,sha256=sz-NCgGyRKhNz2tPR7Zq10iYQ8Itig-fls4h7GMHhNM,7593
108
+ crawlee/http_clients/_curl_impersonate.py,sha256=a_1QQ04Tk_d5t2mIjxEKPvjF7zTn3q74QosuBjG8Wkc,11847
109
+ crawlee/http_clients/_httpx.py,sha256=abRe2YjQUfIrtmOwOAB72viwd8CF0V2mAXQceLuIWvo,12375
110
+ crawlee/http_clients/_impit.py,sha256=wEfDSOGIOmfLUkmLXAmZkiM5wp4PltUv-oH7zq2NMfQ,9434
110
111
  crawlee/otel/__init__.py,sha256=g5y1tJfpDKfcIPGcKBztMgP6sptum-vJrtemeR8_-co,108
111
- crawlee/otel/crawler_instrumentor.py,sha256=-RScIEUWqC1D0ugtx6uV3ykiw1XHdWeevC-bfzwjOvc,6862
112
+ crawlee/otel/crawler_instrumentor.py,sha256=yC367A1NnAdhOanvym2zfiu4H4BskUslrib0GcHiVJs,6865
112
113
  crawlee/project_template/cookiecutter.json,sha256=dJeYxLx5QEy2DCzXsDpqJQJlIJ3nw42lJrclZFoSZ8w,622
113
114
  crawlee/project_template/hooks/post_gen_project.py,sha256=EBNgb_-eodDxaYJljYYznZGASnduxJ54RDO_b4ofm4M,1296
114
115
  crawlee/project_template/hooks/pre_gen_project.py,sha256=AqvHJRTOTQzKFX10Zt8uKt8UFHczDJ1ogPPHQVdY2ZU,1175
@@ -125,59 +126,81 @@ crawlee/project_template/templates/routes_playwright_camoufox.py,sha256=XtXWbPZ4
125
126
  crawlee/project_template/{{cookiecutter.project_name}}/.dockerignore,sha256=PCDXvENlrMmYleuQULduBiw8ipXmE_iYJtCmeZVuz1I,6
126
127
  crawlee/project_template/{{cookiecutter.project_name}}/Dockerfile,sha256=NRSdHgEnCjBWE0lU3y-qHNEUJg_OH3zhoo0fPzkIs58,4138
127
128
  crawlee/project_template/{{cookiecutter.project_name}}/README.md,sha256=kEwhjWKqnSbg3gtGsuEiqWFGoqMdf4W7TZ0Lu0omwHk,1753
128
- crawlee/project_template/{{cookiecutter.project_name}}/pyproject.toml,sha256=E89kToOVOEclt5OB8YOg7fJM5o4TAEYlwz3-O1kpPi4,970
129
- crawlee/project_template/{{cookiecutter.project_name}}/requirements.txt,sha256=xOeHqX5Bi2Iw1nkmBqbawX5A0qHo4CjQLn6JB-BNeUw,377
129
+ crawlee/project_template/{{cookiecutter.project_name}}/pyproject.toml,sha256=rfzarAQB8H93clog9xnqVThCIR7ltKqasMHX0-9PIMw,970
130
+ crawlee/project_template/{{cookiecutter.project_name}}/requirements.txt,sha256=HTiM50HxLguBgqKKLFR9DjsfrWgo13n8cAAJ9xhEmw8,460
130
131
  crawlee/project_template/{{cookiecutter.project_name}}/{{cookiecutter.__package_name}}/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
131
132
  crawlee/project_template/{{cookiecutter.project_name}}/{{cookiecutter.__package_name}}/__main__.py,sha256=7YQVjE3HdCnoU055kLcKUcqXvbp3C2rtAY2TSJaItts,867
132
133
  crawlee/project_template/{{cookiecutter.project_name}}/{{cookiecutter.__package_name}}/main.py,sha256=mb3Wo_FpXGdIzWABJ0Y6CE-eXKxqSM_k__tnYYM1rF4,55
133
134
  crawlee/project_template/{{cookiecutter.project_name}}/{{cookiecutter.__package_name}}/routes.py,sha256=rF-o4w_vdBgYC2qMNmyxUV9CqrGXdk6PJgKbeNY5xOM,57
134
135
  crawlee/request_loaders/__init__.py,sha256=W3Mh5uDeb7age5hUTcW2AEdKDCX7AY2aOux2t4gQH6U,353
135
- crawlee/request_loaders/_request_list.py,sha256=vdFtqIZdW9zD-l7jplQMIXhV93LGM97fYxLwwoEVvIQ,8833
136
- crawlee/request_loaders/_request_loader.py,sha256=7vE4KowhoXeAX5ATanzKLSX1AAKqatBU_hEg1QhA-TQ,3448
136
+ crawlee/request_loaders/_request_list.py,sha256=SIalHBMuFanE5GLnFocI0QCppWUiJQjr-Vm4MM-eCOI,8873
137
+ crawlee/request_loaders/_request_loader.py,sha256=2Bg-AWWkIV1W-Dwjqo91dPY8nmc7H3teQy7d6OSgliQ,3620
137
138
  crawlee/request_loaders/_request_manager.py,sha256=qFizyJuV2meIb9iiPfuii7ciuERMrp4SldAufiH46dc,3000
138
139
  crawlee/request_loaders/_request_manager_tandem.py,sha256=lv-s94KPsoQAqx1KaXFch96ejhO147uOflF3UK5ORTk,4058
139
- crawlee/request_loaders/_sitemap_request_loader.py,sha256=mLI5hvd3obSqU3Z91-ahT_c9OzM6c1yXL2netxEst9w,6531
140
+ crawlee/request_loaders/_sitemap_request_loader.py,sha256=W1_k_Szrtk0iE2LJBkHrrFeDtcKReXzr3DG32EnQaQE,16565
140
141
  crawlee/sessions/__init__.py,sha256=dJdelbL-6MK5sW4SMU4QrjFbb9kRZ9uRnN-VS3R5-8Y,190
141
142
  crawlee/sessions/_cookies.py,sha256=ihYbmpXfCzClzXDT7M2wefB_3KVzcMUdIzTZo6uGk6Y,9356
142
- crawlee/sessions/_models.py,sha256=PYQBdhfbksvHO57ApQbtoY-XFM4nUk-nmaW_VclgHx0,2868
143
+ crawlee/sessions/_models.py,sha256=JMRQgDUP30XUdZ32isncHowOsXvK9jC_m9QYegbBI1E,2916
143
144
  crawlee/sessions/_session.py,sha256=cMXVf6QjfGJDgdLUB4MhUP-zTm3pEDHRs-W5SBA4JFI,9638
144
- crawlee/sessions/_session_pool.py,sha256=-cMODmTRAXuoYa9DoW0cSTxbPuauF5qXY9QJcX6hXTg,9630
145
+ crawlee/sessions/_session_pool.py,sha256=_FYTXRANDiREK09DSoHIu-536sSUj9wazbrcl6iKdFM,9631
145
146
  crawlee/sessions/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
146
147
  crawlee/statistics/__init__.py,sha256=lXAsHNkeRZQBffW1B7rERarivXIUJveNlcKTGOXQZY0,154
147
- crawlee/statistics/_error_snapshotter.py,sha256=ChBBG0gIMWcSeyEzs3jQf3mSnHLZUHcD284wEDan1Js,3278
148
+ crawlee/statistics/_error_snapshotter.py,sha256=g-roZgkJ-glyStZL7gXrOhrpdZvZ686W9lR43uZjPao,3279
148
149
  crawlee/statistics/_error_tracker.py,sha256=x9Yw1TuyEptjwgPPJ4gIom-0oVjawcNReQDsHH2nZ3w,8553
149
- crawlee/statistics/_models.py,sha256=qHFDng6-kOb1E1FRtNkNHSrIpiII1vySgG_c70Hngyg,4995
150
- crawlee/statistics/_statistics.py,sha256=fJr_du4CkVTz4_UgVToivAJKgA88PThE6IDBCW8RSTQ,12183
151
- crawlee/storage_clients/__init__.py,sha256=eKf5Hs6zXNk_qH8WBY84a3Sh-h3TmmQKZ_sod_petCA,218
152
- crawlee/storage_clients/models.py,sha256=cuYL3UQWqP3XFzjM2Wtq-DkVGZyY1y-5CBE340Qgw5s,5999
150
+ crawlee/statistics/_models.py,sha256=n4sT35D4dqNPYREl8Q_YXANZtxaWC0HaZizobA4qK_c,6674
151
+ crawlee/statistics/_statistics.py,sha256=mSgnCnV7q2buJdyuXBxbUU9MQEUjxaLST_NO4ej3XRw,12341
152
+ crawlee/storage_clients/__init__.py,sha256=X3M6Z_WAOJ3M9I8JhGhJDnrtbCOmM27DpGAzgt87R2A,874
153
+ crawlee/storage_clients/models.py,sha256=gfW_kpSCOBuoTBIW0N7tb3FUv7BgD3keZADS7pyT4_I,6586
153
154
  crawlee/storage_clients/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
154
155
  crawlee/storage_clients/_base/__init__.py,sha256=-f0VIaGjw7Oo6HAgEK9ABtmKnnSRwzkA3WUQZMX5w0w,307
155
156
  crawlee/storage_clients/_base/_dataset_client.py,sha256=0JBiXVXZlPzd2o3r2uc_skl6aYEer2-wcvOv3ZgIQls,3049
156
157
  crawlee/storage_clients/_base/_key_value_store_client.py,sha256=eTZae1pIINnbs__FLvwvX8jTraEKMjdZuA69IrwLzfk,3409
157
- crawlee/storage_clients/_base/_request_queue_client.py,sha256=XLddfU8x2H8eElDNp6eByX93_d5a1Zeh4vXv6nZ6jko,4918
158
- crawlee/storage_clients/_base/_storage_client.py,sha256=1hTHXYiq4EMViNt1pdfa54ABlSvpiim6d2IVif0jtak,2954
158
+ crawlee/storage_clients/_base/_request_queue_client.py,sha256=cgM4yk6xJwgfzP-xaN9ApqJn32sh0FrSEPIdxN7kujw,4926
159
+ crawlee/storage_clients/_base/_storage_client.py,sha256=RvmKCV1U9_KxyG7n8xhClm2vwD2SKChWIiBLk6cuqw0,3523
159
160
  crawlee/storage_clients/_base/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
160
161
  crawlee/storage_clients/_file_system/__init__.py,sha256=w3twfwz5YeLYeu_70pNPBRINS2wXRvzOMvA1hUDYgf0,387
161
- crawlee/storage_clients/_file_system/_dataset_client.py,sha256=088x7IaIo69JhLJMfVIrvBV5vTmS28hzOy21l1UuYFk,17569
162
- crawlee/storage_clients/_file_system/_key_value_store_client.py,sha256=rzxmE7ArvLbgl6fMUfJZvF1dh-ftL9-7vhrXHhclPwQ,18514
163
- crawlee/storage_clients/_file_system/_request_queue_client.py,sha256=dofth3xSeulJXtfQZNXQeoowRPyRsvAonU4EJYTmCq4,33088
164
- crawlee/storage_clients/_file_system/_storage_client.py,sha256=-ypuyaCMOA3_2pVokzsCEay-1DRoXwmON3IgNVyx0Z0,2762
162
+ crawlee/storage_clients/_file_system/_dataset_client.py,sha256=DTRYlm37VV7FuowenG0JoqiQdH5AMg9G0O1PPJJO-u0,17781
163
+ crawlee/storage_clients/_file_system/_key_value_store_client.py,sha256=zPXCKPm6w8UYLYwSOuAoc4uoFswJjTAoWMulucvFBiI,18745
164
+ crawlee/storage_clients/_file_system/_request_queue_client.py,sha256=3dn9DM750ftuUzDCp_Uj56tNakYb93nhmeSo2LjPeV0,34039
165
+ crawlee/storage_clients/_file_system/_storage_client.py,sha256=My63uc513kfUPe5X-PTYWBRe9xUGnkLqJN7IcsQd2yw,3293
166
+ crawlee/storage_clients/_file_system/_utils.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
165
167
  crawlee/storage_clients/_file_system/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
166
168
  crawlee/storage_clients/_memory/__init__.py,sha256=WHyBhckxdw2k0epkM_B3ymNASebNTOCU_NrvfzUAn14,355
167
- crawlee/storage_clients/_memory/_dataset_client.py,sha256=0fA9iakYAP_iw9IzPbiJeNL3XfmKpykQbSrTiQphcoE,8275
168
- crawlee/storage_clients/_memory/_key_value_store_client.py,sha256=4NJ0hmm1ddW0f1hJzxKUxCF-Y78KbvWg4hi90gwMOqo,5963
169
- crawlee/storage_clients/_memory/_request_queue_client.py,sha256=gSuhg9JvPybpvVdRcTKcqlbcC3pYo9oXJo8Xh8h8kR0,12272
170
- crawlee/storage_clients/_memory/_storage_client.py,sha256=9Vq8CBW_M3Kwd9dbkPXv-otugBhfa0VHlfj9zgLq2YE,2583
169
+ crawlee/storage_clients/_memory/_dataset_client.py,sha256=wxuhyVnWyi9jUfI2eY4kSgD6vVje4gL2Bursto348Ps,8827
170
+ crawlee/storage_clients/_memory/_key_value_store_client.py,sha256=rBXRggALe-0kBAe03sdLVkABhkEFmHqXRabR28IugUE,6472
171
+ crawlee/storage_clients/_memory/_request_queue_client.py,sha256=hPI78S1sOopVKFKDRW7ndkha7TVcJfwdd4onXgfb4Pk,13096
172
+ crawlee/storage_clients/_memory/_storage_client.py,sha256=EyiH-MgM_6iBItjmy2SkWAdjVbviacnxr3la-yiGfIw,2724
171
173
  crawlee/storage_clients/_memory/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
174
+ crawlee/storage_clients/_redis/__init__.py,sha256=HrtfC0mRgz2dCNe8olCWjwe2NXnFFDPoXOuBIDBFlIg,328
175
+ crawlee/storage_clients/_redis/_client_mixin.py,sha256=DIPW4_En-w5z7tVbSUDa1jn5DFbLlG_6vW5naoeg_wY,12435
176
+ crawlee/storage_clients/_redis/_dataset_client.py,sha256=7D31bVcpmtyhRjZuzSvSKSMev8xoiX3J6f_NPc7wlUc,11562
177
+ crawlee/storage_clients/_redis/_key_value_store_client.py,sha256=EnR99uRJUOxqbELS-73vEDNw4WDJzF6-UG2ESHGrD6M,10394
178
+ crawlee/storage_clients/_redis/_request_queue_client.py,sha256=WNms5wHhDo7Jf2xG_8sV3KgtXEVDP-rBarOF-EUS92E,24958
179
+ crawlee/storage_clients/_redis/_storage_client.py,sha256=oeHLD1_vDDrgN6uUUT4nqGP-6z0YAM3_SnyxmFOvW58,5404
180
+ crawlee/storage_clients/_redis/_utils.py,sha256=fEdQ5b5Zex_bSXcKhXakfQBpXmo5wKnEK_MeeT-q6Bc,700
181
+ crawlee/storage_clients/_redis/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
182
+ crawlee/storage_clients/_redis/lua_scripts/atomic_bloom_add_requests.lua,sha256=gYtZfjXp-D-vvlRZBzf7J4OCP2_js_oNnzAkbPfK3Bg,1054
183
+ crawlee/storage_clients/_redis/lua_scripts/atomic_fetch_request.lua,sha256=66aJjIR9f6hQcmVhOA8Km_7PaduJFqOdsisieWDIn6E,1351
184
+ crawlee/storage_clients/_redis/lua_scripts/atomic_set_add_requests.lua,sha256=coxBfdPMc0X9rpszMCvdZXEbQzrRc7qU4flhN3MKwjc,1123
185
+ crawlee/storage_clients/_redis/lua_scripts/reclaim_stale_requests.lua,sha256=gvDTseg5vo-YNVvftip6f_unCdM7TaM_Btc9sj-5AOw,896
186
+ crawlee/storage_clients/_sql/__init__.py,sha256=X_fDMc6jn50gEBZ9QyUw54sjovYfFvE-dgXAdci6Y2M,312
187
+ crawlee/storage_clients/_sql/_client_mixin.py,sha256=U9ThDUuRbT5JDtCFlBurhZIs1Ay5t9fTfPXXI_4dwHY,15988
188
+ crawlee/storage_clients/_sql/_dataset_client.py,sha256=tiJVvOPZgc7cy4kGfWnun-g2TJMHMdaLnoqns5Sl6ek,10203
189
+ crawlee/storage_clients/_sql/_db_models.py,sha256=KzA-R_L6zv9gqQg7B27mF-fERNJuMUEnewV9iofmTnI,9812
190
+ crawlee/storage_clients/_sql/_key_value_store_client.py,sha256=LnVLWhOjo4LdvtCac4fwuf__DgEQjlqSxz8KkjY3Qx4,11311
191
+ crawlee/storage_clients/_sql/_request_queue_client.py,sha256=OlvAOwEoYY5f4NO7BdhLFRT_i_E3YzJDb_ptKKK2huY,29478
192
+ crawlee/storage_clients/_sql/_storage_client.py,sha256=ITtMpwfotIW4SZjO4rycB5wfMKaqTAJgMvzcUZxckrk,10905
193
+ crawlee/storage_clients/_sql/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
172
194
  crawlee/storages/__init__.py,sha256=wc2eioyCKAAYrg4N7cshpjC-UbE23OzGar9nK_kteSY,186
173
- crawlee/storages/_base.py,sha256=-vTBeTeataBJ_2hN-Ls3YatJ-GdqrSWoXYBOBaypB-E,1978
174
- crawlee/storages/_dataset.py,sha256=epsqKECdrL7d5PiJKfCY2FNEJZo8vYo71yCKjN53k9I,14248
175
- crawlee/storages/_key_value_store.py,sha256=_BOImKr0_71h_G3vkjifxj7_rjrdnaUI3hm55Ma0T1c,9810
176
- crawlee/storages/_request_queue.py,sha256=FqRy2WkFPASOCqhRdPNMwKXYZSP6h2BI5Lj_Viel9sM,12855
177
- crawlee/storages/_storage_instance_manager.py,sha256=o8m3YNZpjYLcZP9uiEl8cg53eRhHrFhrP5gonKICsT4,4808
195
+ crawlee/storages/_base.py,sha256=zUOcMJTg8MAzq-m9X1NJcWncCfxzI5mb5MyY35WAkMk,2310
196
+ crawlee/storages/_dataset.py,sha256=l3VJCaJnaAEhJFpfRUOLzIbW332R8gdEPSSGhLq65pg,14652
197
+ crawlee/storages/_key_value_store.py,sha256=xdkMJYdH3zXzwB3jtkijq-YkMlwBtfXxDFIUlpvpXAE,10298
198
+ crawlee/storages/_request_queue.py,sha256=bjBOGbpMaGUsqJPVB-JD2VShziPAYMI-GvWKKpylzDE,13233
199
+ crawlee/storages/_storage_instance_manager.py,sha256=72n0YlPwNpSQDJSPf4TxnI2GvIK6L-ZiTmHRbFcoVU0,8164
200
+ crawlee/storages/_utils.py,sha256=Yz-5tEBYKYCFJemYT29--uGJqoJLApLDLgPcsnbifRw,439
178
201
  crawlee/storages/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
179
- crawlee-0.6.13b17.dist-info/METADATA,sha256=qan4GDWq7E27ESYsAh3jzVqVx7ay2lXReEdpJs4W7Og,28921
180
- crawlee-0.6.13b17.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
181
- crawlee-0.6.13b17.dist-info/entry_points.txt,sha256=1p65X3dA-cYvzjtlxLL6Kn1wpY-3uEDVqJLp53uNPeo,45
182
- crawlee-0.6.13b17.dist-info/licenses/LICENSE,sha256=AsFjHssKjj4LGd2ZCqXn6FBzMqcWdjQre1byPPSypVw,11355
183
- crawlee-0.6.13b17.dist-info/RECORD,,
202
+ crawlee-1.1.2b7.dist-info/METADATA,sha256=WIBN29uuPunE5voLZikzKjiDbW0PVVnmOENKtTJR2A8,29508
203
+ crawlee-1.1.2b7.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
204
+ crawlee-1.1.2b7.dist-info/entry_points.txt,sha256=1p65X3dA-cYvzjtlxLL6Kn1wpY-3uEDVqJLp53uNPeo,45
205
+ crawlee-1.1.2b7.dist-info/licenses/LICENSE,sha256=AsFjHssKjj4LGd2ZCqXn6FBzMqcWdjQre1byPPSypVw,11355
206
+ crawlee-1.1.2b7.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: hatchling 1.27.0
2
+ Generator: hatchling 1.28.0
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
@@ -1,31 +0,0 @@
1
- from __future__ import annotations
2
-
3
- import time
4
- from contextlib import contextmanager
5
- from dataclasses import dataclass
6
- from typing import TYPE_CHECKING
7
-
8
- if TYPE_CHECKING:
9
- from collections.abc import Iterator
10
-
11
-
12
- @dataclass
13
- class TimerResult:
14
- wall: float | None = None
15
- cpu: float | None = None
16
-
17
-
18
- @contextmanager
19
- def measure_time() -> Iterator[TimerResult]:
20
- """Measure the execution time (wall-clock and CPU) between the start and end of the with-block."""
21
- result = TimerResult()
22
- before_wall = time.monotonic()
23
- before_cpu = time.thread_time()
24
-
25
- try:
26
- yield result
27
- finally:
28
- after_wall = time.monotonic()
29
- after_cpu = time.thread_time()
30
- result.wall = after_wall - before_wall
31
- result.cpu = after_cpu - before_cpu