webscout 2025.10.15__tar.gz → 2025.10.16__tar.gz

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 webscout might be problematic. Click here for more details.

Files changed (357) hide show
  1. {webscout-2025.10.15/webscout.egg-info → webscout-2025.10.16}/PKG-INFO +10 -52
  2. {webscout-2025.10.15 → webscout-2025.10.16}/README.md +9 -49
  3. {webscout-2025.10.15 → webscout-2025.10.16}/changelog.md +0 -0
  4. {webscout-2025.10.15 → webscout-2025.10.16}/pyproject.toml +2 -4
  5. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/YTToolkit/README.md +1 -1
  6. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/tempmail/README.md +3 -3
  7. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/README.md +1 -1
  8. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTI/bing.py +4 -4
  9. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/__init__.py +1 -1
  10. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/client.py +4 -5
  11. webscout-2025.10.16/webscout/litprinter/__init__.py +17 -0
  12. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/scout/README.md +59 -8
  13. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/scout/core/scout.py +62 -0
  14. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/scout/element.py +251 -45
  15. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/__init__.py +3 -4
  16. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/bing/images.py +5 -2
  17. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/bing/news.py +6 -4
  18. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/bing/text.py +5 -2
  19. webscout-2025.10.16/webscout/search/engines/yahoo/__init__.py +41 -0
  20. webscout-2025.10.16/webscout/search/engines/yahoo/answers.py +16 -0
  21. webscout-2025.10.16/webscout/search/engines/yahoo/base.py +34 -0
  22. webscout-2025.10.16/webscout/search/engines/yahoo/images.py +324 -0
  23. webscout-2025.10.16/webscout/search/engines/yahoo/maps.py +16 -0
  24. webscout-2025.10.16/webscout/search/engines/yahoo/news.py +258 -0
  25. webscout-2025.10.16/webscout/search/engines/yahoo/suggestions.py +140 -0
  26. webscout-2025.10.16/webscout/search/engines/yahoo/text.py +273 -0
  27. webscout-2025.10.16/webscout/search/engines/yahoo/translate.py +16 -0
  28. webscout-2025.10.16/webscout/search/engines/yahoo/videos.py +302 -0
  29. webscout-2025.10.16/webscout/search/engines/yahoo/weather.py +220 -0
  30. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/http_client.py +1 -1
  31. webscout-2025.10.16/webscout/search/yahoo_main.py +54 -0
  32. {webscout-2025.10.15/webscout/auth → webscout-2025.10.16/webscout/server}/__init__.py +2 -23
  33. webscout-2025.10.16/webscout/server/config.py +84 -0
  34. {webscout-2025.10.15/webscout/auth → webscout-2025.10.16/webscout/server}/request_processing.py +3 -28
  35. {webscout-2025.10.15/webscout/auth → webscout-2025.10.16/webscout/server}/routes.py +6 -148
  36. webscout-2025.10.16/webscout/server/schemas.py +23 -0
  37. {webscout-2025.10.15/webscout/auth → webscout-2025.10.16/webscout/server}/server.py +11 -43
  38. webscout-2025.10.16/webscout/server/simple_logger.py +84 -0
  39. webscout-2025.10.16/webscout/version.py +2 -0
  40. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/zeroart/README.md +17 -9
  41. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/zeroart/__init__.py +78 -6
  42. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/zeroart/effects.py +51 -1
  43. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/zeroart/fonts.py +559 -1
  44. {webscout-2025.10.15 → webscout-2025.10.16/webscout.egg-info}/PKG-INFO +10 -52
  45. {webscout-2025.10.15 → webscout-2025.10.16}/webscout.egg-info/SOURCES.txt +44 -36
  46. {webscout-2025.10.15 → webscout-2025.10.16}/webscout.egg-info/entry_points.txt +1 -1
  47. {webscout-2025.10.15 → webscout-2025.10.16}/webscout.egg-info/requires.txt +0 -2
  48. webscout-2025.10.15/webscout/auth/api_key_manager.py +0 -189
  49. webscout-2025.10.15/webscout/auth/auth_system.py +0 -85
  50. webscout-2025.10.15/webscout/auth/config.py +0 -175
  51. webscout-2025.10.15/webscout/auth/database.py +0 -755
  52. webscout-2025.10.15/webscout/auth/middleware.py +0 -248
  53. webscout-2025.10.15/webscout/auth/models.py +0 -185
  54. webscout-2025.10.15/webscout/auth/rate_limiter.py +0 -254
  55. webscout-2025.10.15/webscout/auth/schemas.py +0 -103
  56. webscout-2025.10.15/webscout/auth/simple_logger.py +0 -236
  57. webscout-2025.10.15/webscout/litprinter/__init__.py +0 -59
  58. webscout-2025.10.15/webscout/search/engines/yahoo.py +0 -65
  59. webscout-2025.10.15/webscout/search/engines/yahoo_news.py +0 -64
  60. webscout-2025.10.15/webscout/version.py.bak +0 -2
  61. {webscout-2025.10.15 → webscout-2025.10.16}/LEGAL_NOTICE.md +0 -0
  62. {webscout-2025.10.15 → webscout-2025.10.16}/LICENSE.md +0 -0
  63. {webscout-2025.10.15 → webscout-2025.10.16}/MANIFEST.in +0 -0
  64. {webscout-2025.10.15 → webscout-2025.10.16}/setup.cfg +0 -0
  65. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/AIauto.py +0 -0
  66. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/AIbase.py +0 -0
  67. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/AIutel.py +0 -0
  68. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Bard.py +0 -0
  69. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/Act.md +0 -0
  70. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/GitToolkit/__init__.py +0 -0
  71. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/GitToolkit/gitapi/README.md +0 -0
  72. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/GitToolkit/gitapi/__init__.py +0 -0
  73. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/GitToolkit/gitapi/repository.py +0 -0
  74. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/GitToolkit/gitapi/user.py +0 -0
  75. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/GitToolkit/gitapi/utils.py +0 -0
  76. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/YTToolkit/YTdownloader.py +0 -0
  77. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/YTToolkit/__init__.py +0 -0
  78. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/YTToolkit/transcriber.py +0 -0
  79. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/YTToolkit/ytapi/README.md +0 -0
  80. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/YTToolkit/ytapi/__init__.py +0 -0
  81. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/YTToolkit/ytapi/channel.py +0 -0
  82. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/YTToolkit/ytapi/errors.py +0 -0
  83. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/YTToolkit/ytapi/extras.py +0 -0
  84. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/YTToolkit/ytapi/https.py +0 -0
  85. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/YTToolkit/ytapi/patterns.py +0 -0
  86. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/YTToolkit/ytapi/playlist.py +0 -0
  87. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/YTToolkit/ytapi/pool.py +0 -0
  88. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/YTToolkit/ytapi/query.py +0 -0
  89. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/YTToolkit/ytapi/stream.py +0 -0
  90. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/YTToolkit/ytapi/utils.py +0 -0
  91. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/YTToolkit/ytapi/video.py +0 -0
  92. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/__init__.py +0 -0
  93. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/autocoder/__init__.py +0 -0
  94. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/autocoder/autocoder.py +0 -0
  95. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/autocoder/autocoder_utiles.py +0 -0
  96. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/gguf.md +0 -0
  97. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/gguf.py +0 -0
  98. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/tempmail/__init__.py +0 -0
  99. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/tempmail/async_utils.py +0 -0
  100. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/tempmail/base.py +0 -0
  101. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/tempmail/cli.py +0 -0
  102. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/tempmail/emailnator.py +0 -0
  103. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/tempmail/mail_tm.py +0 -0
  104. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/tempmail/temp_mail_io.py +0 -0
  105. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/weather.md +0 -0
  106. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/weather.py +0 -0
  107. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Extra/weather_ascii.py +0 -0
  108. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Litlogger/README.md +0 -0
  109. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Litlogger/__init__.py +0 -0
  110. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Litlogger/formats.py +0 -0
  111. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Litlogger/handlers.py +0 -0
  112. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Litlogger/levels.py +0 -0
  113. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Litlogger/logger.py +0 -0
  114. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/AISEARCH/PERPLEXED_search.py +0 -0
  115. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/AISEARCH/Perplexity.py +0 -0
  116. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/AISEARCH/README.md +0 -0
  117. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/AISEARCH/__init__.py +0 -0
  118. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/AISEARCH/felo_search.py +0 -0
  119. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/AISEARCH/genspark_search.py +0 -0
  120. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/AISEARCH/hika_search.py +0 -0
  121. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/AISEARCH/iask_search.py +0 -0
  122. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/AISEARCH/monica_search.py +0 -0
  123. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/AISEARCH/scira_search.py +0 -0
  124. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/AISEARCH/stellar_search.py +0 -0
  125. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/AISEARCH/webpilotai_search.py +0 -0
  126. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/Aitopia.py +0 -0
  127. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/Andi.py +0 -0
  128. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/Apriel.py +0 -0
  129. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/ChatGPTClone.py +0 -0
  130. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/ChatSandbox.py +0 -0
  131. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/Cloudflare.py +0 -0
  132. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/Cohere.py +0 -0
  133. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/Deepinfra.py +0 -0
  134. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/ExaAI.py +0 -0
  135. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/ExaChat.py +0 -0
  136. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/Flowith.py +0 -0
  137. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/GMI.py +0 -0
  138. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/Gemini.py +0 -0
  139. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/GeminiProxy.py +0 -0
  140. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/GithubChat.py +0 -0
  141. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/Groq.py +0 -0
  142. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/HeckAI.py +0 -0
  143. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/Jadve.py +0 -0
  144. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/K2Think.py +0 -0
  145. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/Koboldai.py +0 -0
  146. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/LambdaChat.py +0 -0
  147. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/Nemotron.py +0 -0
  148. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/Netwrck.py +0 -0
  149. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OLLAMA.py +0 -0
  150. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/Cloudflare.py +0 -0
  151. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/FalconH1.py +0 -0
  152. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/FreeGemini.py +0 -0
  153. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/GeminiProxy.py +0 -0
  154. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/K2Think.py +0 -0
  155. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/NEMOTRON.py +0 -0
  156. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/PI.py +0 -0
  157. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/TogetherAI.py +0 -0
  158. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/TwoAI.py +0 -0
  159. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/__init__.py +0 -0
  160. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/ai4chat.py +0 -0
  161. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/base.py +0 -0
  162. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/chatglm.py +0 -0
  163. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/chatgpt.py +0 -0
  164. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/chatgptclone.py +0 -0
  165. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/chatsandbox.py +0 -0
  166. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/deepinfra.py +0 -0
  167. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/e2b.py +0 -0
  168. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/exaai.py +0 -0
  169. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/exachat.py +0 -0
  170. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/flowith.py +0 -0
  171. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/friendli.py +0 -0
  172. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/generate_api_key.py +0 -0
  173. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/gmi.py +0 -0
  174. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/groq.py +0 -0
  175. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/heckai.py +0 -0
  176. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/llmchatco.py +0 -0
  177. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/netwrck.py +0 -0
  178. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/oivscode.py +0 -0
  179. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/opkfc.py +0 -0
  180. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/pydantic_imports.py +0 -0
  181. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/scirachat.py +0 -0
  182. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/sonus.py +0 -0
  183. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/standardinput.py +0 -0
  184. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/textpollinations.py +0 -0
  185. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/toolbaz.py +0 -0
  186. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/typefully.py +0 -0
  187. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/utils.py +0 -0
  188. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/venice.py +0 -0
  189. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/wisecat.py +0 -0
  190. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/writecream.py +0 -0
  191. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/x0gpt.py +0 -0
  192. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OPENAI/yep.py +0 -0
  193. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/OpenGPT.py +0 -0
  194. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/Openai.py +0 -0
  195. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/PI.py +0 -0
  196. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/Perplexitylabs.py +0 -0
  197. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/QwenLM.py +0 -0
  198. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/STT/__init__.py +0 -0
  199. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/STT/base.py +0 -0
  200. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/STT/elevenlabs.py +0 -0
  201. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/Sambanova.py +0 -0
  202. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/StandardInput.py +0 -0
  203. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTI/README.md +0 -0
  204. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTI/__init__.py +0 -0
  205. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTI/aiarta.py +0 -0
  206. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTI/base.py +0 -0
  207. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTI/gpt1image.py +0 -0
  208. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTI/imagen.py +0 -0
  209. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTI/infip.py +0 -0
  210. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTI/magicstudio.py +0 -0
  211. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTI/monochat.py +0 -0
  212. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTI/piclumen.py +0 -0
  213. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTI/pixelmuse.py +0 -0
  214. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTI/pollinations.py +0 -0
  215. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTI/together.py +0 -0
  216. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTI/utils.py +0 -0
  217. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTI/venice.py +0 -0
  218. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTS/README.md +0 -0
  219. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTS/__init__.py +0 -0
  220. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTS/base.py +0 -0
  221. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTS/deepgram.py +0 -0
  222. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTS/elevenlabs.py +0 -0
  223. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTS/freetts.py +0 -0
  224. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTS/gesserit.py +0 -0
  225. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTS/murfai.py +0 -0
  226. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTS/openai_fm.py +0 -0
  227. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTS/parler.py +0 -0
  228. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTS/speechma.py +0 -0
  229. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTS/streamElements.py +0 -0
  230. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TTS/utils.py +0 -0
  231. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TeachAnything.py +0 -0
  232. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TextPollinationsAI.py +0 -0
  233. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TogetherAI.py +0 -0
  234. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TwoAI.py +0 -0
  235. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/TypliAI.py +0 -0
  236. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/UNFINISHED/ChatHub.py +0 -0
  237. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/UNFINISHED/ChutesAI.py +0 -0
  238. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/UNFINISHED/GizAI.py +0 -0
  239. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/UNFINISHED/Marcus.py +0 -0
  240. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/UNFINISHED/Qodo.py +0 -0
  241. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/UNFINISHED/VercelAIGateway.py +0 -0
  242. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/UNFINISHED/XenAI.py +0 -0
  243. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/UNFINISHED/Youchat.py +0 -0
  244. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/UNFINISHED/liner.py +0 -0
  245. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/UNFINISHED/liner_api_request.py +0 -0
  246. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/UNFINISHED/puterjs.py +0 -0
  247. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/UNFINISHED/samurai.py +0 -0
  248. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/UNFINISHED/test_lmarena.py +0 -0
  249. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/Venice.py +0 -0
  250. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/VercelAI.py +0 -0
  251. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/WiseCat.py +0 -0
  252. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/WrDoChat.py +0 -0
  253. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/__init__.py +0 -0
  254. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/ai4chat.py +0 -0
  255. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/akashgpt.py +0 -0
  256. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/cerebras.py +0 -0
  257. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/chatglm.py +0 -0
  258. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/cleeai.py +0 -0
  259. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/deepseek_assistant.py +0 -0
  260. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/elmo.py +0 -0
  261. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/geminiapi.py +0 -0
  262. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/granite.py +0 -0
  263. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/hermes.py +0 -0
  264. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/julius.py +0 -0
  265. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/learnfastai.py +0 -0
  266. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/llama3mitril.py +0 -0
  267. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/llmchat.py +0 -0
  268. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/llmchatco.py +0 -0
  269. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/meta.py +0 -0
  270. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/oivscode.py +0 -0
  271. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/scira_chat.py +0 -0
  272. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/searchchat.py +0 -0
  273. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/sonus.py +0 -0
  274. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/toolbaz.py +0 -0
  275. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/turboseek.py +0 -0
  276. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/typefully.py +0 -0
  277. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/x0gpt.py +0 -0
  278. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/Provider/yep.py +0 -0
  279. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/__main__.py +0 -0
  280. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/cli.py +0 -0
  281. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/conversation.py +0 -0
  282. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/exceptions.py +0 -0
  283. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/litagent/Readme.md +0 -0
  284. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/litagent/__init__.py +0 -0
  285. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/litagent/agent.py +0 -0
  286. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/litagent/constants.py +0 -0
  287. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/models.py +0 -0
  288. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/optimizers.py +0 -0
  289. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/prompt_manager.py +0 -0
  290. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/sanitize.py +0 -0
  291. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/scout/__init__.py +0 -0
  292. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/scout/core/__init__.py +0 -0
  293. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/scout/core/crawler.py +0 -0
  294. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/scout/core/search_result.py +0 -0
  295. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/scout/core/text_analyzer.py +0 -0
  296. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/scout/core/text_utils.py +0 -0
  297. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/scout/core/web_analyzer.py +0 -0
  298. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/scout/parsers/__init__.py +0 -0
  299. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/scout/parsers/html5lib_parser.py +0 -0
  300. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/scout/parsers/html_parser.py +0 -0
  301. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/scout/parsers/lxml_parser.py +0 -0
  302. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/scout/utils.py +0 -0
  303. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/base.py +0 -0
  304. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/bing_main.py +0 -0
  305. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/duckduckgo_main.py +0 -0
  306. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/__init__.py +0 -0
  307. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/bing/__init__.py +0 -0
  308. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/bing/base.py +0 -0
  309. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/bing/suggestions.py +0 -0
  310. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/brave.py +0 -0
  311. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/duckduckgo/__init__.py +0 -0
  312. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/duckduckgo/answers.py +0 -0
  313. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/duckduckgo/base.py +0 -0
  314. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/duckduckgo/images.py +0 -0
  315. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/duckduckgo/maps.py +0 -0
  316. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/duckduckgo/news.py +0 -0
  317. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/duckduckgo/suggestions.py +0 -0
  318. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/duckduckgo/text.py +0 -0
  319. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/duckduckgo/translate.py +0 -0
  320. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/duckduckgo/videos.py +0 -0
  321. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/duckduckgo/weather.py +0 -0
  322. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/mojeek.py +0 -0
  323. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/wikipedia.py +0 -0
  324. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/yandex.py +0 -0
  325. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/yep/__init__.py +0 -0
  326. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/yep/base.py +0 -0
  327. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/yep/images.py +0 -0
  328. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/yep/suggestions.py +0 -0
  329. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/engines/yep/text.py +0 -0
  330. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/results.py +0 -0
  331. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/search/yep_main.py +0 -0
  332. {webscout-2025.10.15/webscout/auth → webscout-2025.10.16/webscout/server}/exceptions.py +0 -0
  333. {webscout-2025.10.15/webscout/auth → webscout-2025.10.16/webscout/server}/providers.py +0 -0
  334. {webscout-2025.10.15/webscout/auth → webscout-2025.10.16/webscout/server}/request_models.py +0 -0
  335. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/swiftcli/Readme.md +0 -0
  336. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/swiftcli/__init__.py +0 -0
  337. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/swiftcli/core/__init__.py +0 -0
  338. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/swiftcli/core/cli.py +0 -0
  339. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/swiftcli/core/context.py +0 -0
  340. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/swiftcli/core/group.py +0 -0
  341. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/swiftcli/decorators/__init__.py +0 -0
  342. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/swiftcli/decorators/command.py +0 -0
  343. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/swiftcli/decorators/options.py +0 -0
  344. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/swiftcli/decorators/output.py +0 -0
  345. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/swiftcli/exceptions.py +0 -0
  346. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/swiftcli/plugins/__init__.py +0 -0
  347. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/swiftcli/plugins/base.py +0 -0
  348. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/swiftcli/plugins/manager.py +0 -0
  349. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/swiftcli/utils/__init__.py +0 -0
  350. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/swiftcli/utils/formatting.py +0 -0
  351. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/swiftcli/utils/parsing.py +0 -0
  352. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/update_checker.py +0 -0
  353. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/utils.py +0 -0
  354. /webscout-2025.10.15/webscout/version.py → /webscout-2025.10.16/webscout/version.py.bak +0 -0
  355. {webscout-2025.10.15 → webscout-2025.10.16}/webscout/zeroart/base.py +0 -0
  356. {webscout-2025.10.15 → webscout-2025.10.16}/webscout.egg-info/dependency_links.txt +0 -0
  357. {webscout-2025.10.15 → webscout-2025.10.16}/webscout.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: webscout
3
- Version: 2025.10.15
3
+ Version: 2025.10.16
4
4
  Summary: Search for anything using Google, DuckDuckGo, phind.com, Contains AI models, can transcribe yt videos, temporary email and phone number generation, has TTS support, webai (terminal gpt and open interpreter) and offline LLMs and more
5
5
  Author-email: OEvortex <helpingai5@gmail.com>
6
6
  License: HelpingAI
@@ -70,15 +70,13 @@ Requires-Dist: uvicorn[standard]; extra == "api"
70
70
  Requires-Dist: pydantic; extra == "api"
71
71
  Requires-Dist: python-multipart; extra == "api"
72
72
  Requires-Dist: tiktoken; extra == "api"
73
- Requires-Dist: motor; extra == "api"
74
73
  Requires-Dist: jinja2; extra == "api"
75
- Requires-Dist: supabase; extra == "api"
76
74
  Requires-Dist: websockets>=11.0; extra == "api"
77
75
  Requires-Dist: starlette; extra == "api"
78
76
  Dynamic: license-file
79
77
 
80
78
  <div align="center">
81
- <a href="https://github.com/OEvortex/Webscout">
79
+ <a href="https://github.com/pyscout/Webscout">
82
80
  <img src="https://img.shields.io/badge/WebScout-Ultimate%20Toolkit-blue?style=for-the-badge&logo=python&logoColor=white" alt="WebScout Logo">
83
81
  </a>
84
82
 
@@ -96,7 +94,7 @@ Dynamic: license-file
96
94
  <a href="https://pepy.tech/project/webscout"><img src="https://static.pepy.tech/badge/webscout/month?style=flat-square" alt="Monthly Downloads"></a>
97
95
  <a href="https://pepy.tech/project/webscout"><img src="https://static.pepy.tech/badge/webscout?style=flat-square" alt="Total Downloads"></a>
98
96
  <a href="#"><img src="https://img.shields.io/pypi/pyversions/webscout?style=flat-square&logo=python" alt="Python Version"></a>
99
- <a href="https://deepwiki.com/OEvortex/Webscout"><img src="https://deepwiki.com/badge.svg" alt="Ask DeepWiki"></a>
97
+ <a href="https://deepwiki.com/pyscout/Webscout"><img src="https://deepwiki.com/badge.svg" alt="Ask DeepWiki"></a>
100
98
  </p>
101
99
  </div>
102
100
 
@@ -108,6 +106,7 @@ Dynamic: license-file
108
106
  - [⚙️ Installation](#️-installation)
109
107
  - [🖥️ Command Line Interface](#️-command-line-interface)
110
108
  - [🔄 OpenAI-Compatible API Server](docs/openai-api-server.md)
109
+ - [🕸️ Scout: HTML Parser & Web Crawler](docs/scout.md)
111
110
  - [🤖 AI Models and Voices](#-ai-models-and-voices)
112
111
  - [💬 AI Chat Providers](#-ai-chat-providers)
113
112
  - [👨‍💻 Advanced AI Interfaces](#-advanced-ai-interfaces)
@@ -121,7 +120,7 @@ Dynamic: license-file
121
120
  >
122
121
  > - **Native Compatibility:** Webscout's own native API for maximum flexibility
123
122
  > - **OpenAI Compatibility:** Use providers with OpenAI-compatible interfaces
124
- > - **Local LLM Compatibility:** Run local models with [Inferno](https://github.com/HelpingAI/inferno), an OpenAI-compatible server (now a standalone package)
123
+ > - **Local LLM Compatibility:** Run local models with OpenAI-compatible servers
125
124
  >
126
125
  > Choose the approach that best fits your needs! For OpenAI compatibility, check the [OpenAI Providers README](webscout/Provider/OPENAI/README.md) or see the [OpenAI-Compatible API Server](#-openai-compatible-api-server) section below.
127
126
 
@@ -152,7 +151,7 @@ Dynamic: license-file
152
151
  - **AI Powerhouse:** Access and interact with various AI models through three compatibility options:
153
152
  - **Native API:** Use Webscout's native interfaces for providers like OpenAI, Cohere, Gemini, and many more
154
153
  - **[OpenAI-Compatible Providers](webscout/Provider/OPENAI/README.md):** Seamlessly integrate with various AI providers using standardized OpenAI-compatible interfaces
155
- - **[Local LLMs with Inferno](https://github.com/HelpingAI/inferno):** Run local models with an OpenAI-compatible server (now available as a standalone package)
154
+ - **Local LLMs:** Run local models with OpenAI-compatible servers (see [Inferno documentation](docs/inferno.md))
156
155
  - **[AI Search](webscout/Provider/AISEARCH/README.md):** AI-powered search engines with advanced capabilities
157
156
  </p>
158
157
  </details>
@@ -177,8 +176,7 @@ Dynamic: license-file
177
176
  - **[LitPrinter](webscout/litprinter/Readme.md):** Styled console output with rich formatting and colors
178
177
  - **[LitLogger](webscout/litlogger/README.md):** Simplified logging with customizable formats and color schemes
179
178
  - **[LitAgent](webscout/litagent/Readme.md):** Modern user agent generator that keeps your requests undetectable
180
- - **[Scout](webscout/scout/README.md):** Advanced web parsing and crawling library with intelligent HTML/XML parsing
181
- - **[Inferno](https://github.com/HelpingAI/inferno):** Run local LLMs with an OpenAI-compatible API and interactive CLI (now a standalone package: `pip install inferno-llm`)
179
+ - **[Scout](docs/scout.md):** Advanced web parsing and crawling library with intelligent HTML/XML parsing
182
180
  - **[GGUF Conversion](webscout/Extra/gguf.md):** Convert and quantize Hugging Face models to GGUF format
183
181
  - **[Utility Decorators](docs/decorators.md):** Easily measure function execution time (`timeIt`) and add retry logic (`retry`) to any function
184
182
  - **[Stream Sanitization Utilities](docs/sanitize.md):** Advanced tools for cleaning, decoding, and processing data streams
@@ -245,7 +243,7 @@ webscout-server
245
243
 
246
244
  ```bash
247
245
  # Clone the repository
248
- git clone https://github.com/OEvortex/Webscout.git
246
+ git clone https://github.com/pyscout/Webscout.git
249
247
  cd Webscout
250
248
 
251
249
  # Install in development mode with UV
@@ -262,8 +260,8 @@ uv pip install -e ".[dev,api]"
262
260
 
263
261
  ```bash
264
262
  # Pull and run the Docker image
265
- docker pull oevortex/webscout:latest
266
- docker run -it oevortex/webscout:latest
263
+ docker pull pyscout/webscout:latest
264
+ docker run -it pyscout/webscout:latest
267
265
  ```
268
266
 
269
267
  ### 📱 Quick Start Commands
@@ -327,46 +325,6 @@ Webscout provides comprehensive CLI commands for all search engines. See the [Se
327
325
  </p>
328
326
  </details>
329
327
 
330
- <details open>
331
- <summary><b>Inferno LLM Commands</b></summary>
332
- <p>
333
-
334
- Inferno is now a standalone package. Install it separately with:
335
-
336
- ```bash
337
- pip install inferno-llm
338
- ```
339
-
340
- After installation, you can use its CLI for managing and using local LLMs:
341
-
342
- ```bash
343
- inferno --help
344
- ```
345
-
346
- | Command | Description |
347
- | ------------------------ | ----------------------------------------------- |
348
- | `inferno pull <model>` | Download a model from Hugging Face |
349
- | `inferno list` | List downloaded models |
350
- | `inferno serve <model>` | Start a model server with OpenAI-compatible API |
351
- | `inferno run <model>` | Chat with a model interactively |
352
- | `inferno remove <model>` | Remove a downloaded model |
353
- | `inferno version` | Show version information |
354
-
355
- For more information, visit the [Inferno GitHub repository](https://github.com/HelpingAI/inferno) or [PyPI package page](https://pypi.org/project/inferno-llm/).
356
-
357
- </p>
358
- </details>
359
-
360
- > [!NOTE]
361
- > **Hardware requirements for running models with Inferno:**
362
- >
363
- > - Around 2 GB of RAM for 1B models
364
- > - Around 4 GB of RAM for 3B models
365
- > - At least 8 GB of RAM for 7B models
366
- > - 16 GB of RAM for 13B models
367
- > - 32 GB of RAM for 33B models
368
- > - GPU acceleration is recommended for better performance
369
-
370
328
  For detailed information about the OpenAI-compatible API server, including setup, configuration, and usage examples, see the [OpenAI API Server Documentation](docs/openai-api-server.md).
371
329
 
372
330
  <hr/>
@@ -1,5 +1,5 @@
1
1
  <div align="center">
2
- <a href="https://github.com/OEvortex/Webscout">
2
+ <a href="https://github.com/pyscout/Webscout">
3
3
  <img src="https://img.shields.io/badge/WebScout-Ultimate%20Toolkit-blue?style=for-the-badge&logo=python&logoColor=white" alt="WebScout Logo">
4
4
  </a>
5
5
 
@@ -17,7 +17,7 @@
17
17
  <a href="https://pepy.tech/project/webscout"><img src="https://static.pepy.tech/badge/webscout/month?style=flat-square" alt="Monthly Downloads"></a>
18
18
  <a href="https://pepy.tech/project/webscout"><img src="https://static.pepy.tech/badge/webscout?style=flat-square" alt="Total Downloads"></a>
19
19
  <a href="#"><img src="https://img.shields.io/pypi/pyversions/webscout?style=flat-square&logo=python" alt="Python Version"></a>
20
- <a href="https://deepwiki.com/OEvortex/Webscout"><img src="https://deepwiki.com/badge.svg" alt="Ask DeepWiki"></a>
20
+ <a href="https://deepwiki.com/pyscout/Webscout"><img src="https://deepwiki.com/badge.svg" alt="Ask DeepWiki"></a>
21
21
  </p>
22
22
  </div>
23
23
 
@@ -29,6 +29,7 @@
29
29
  - [⚙️ Installation](#️-installation)
30
30
  - [🖥️ Command Line Interface](#️-command-line-interface)
31
31
  - [🔄 OpenAI-Compatible API Server](docs/openai-api-server.md)
32
+ - [🕸️ Scout: HTML Parser & Web Crawler](docs/scout.md)
32
33
  - [🤖 AI Models and Voices](#-ai-models-and-voices)
33
34
  - [💬 AI Chat Providers](#-ai-chat-providers)
34
35
  - [👨‍💻 Advanced AI Interfaces](#-advanced-ai-interfaces)
@@ -42,7 +43,7 @@
42
43
  >
43
44
  > - **Native Compatibility:** Webscout's own native API for maximum flexibility
44
45
  > - **OpenAI Compatibility:** Use providers with OpenAI-compatible interfaces
45
- > - **Local LLM Compatibility:** Run local models with [Inferno](https://github.com/HelpingAI/inferno), an OpenAI-compatible server (now a standalone package)
46
+ > - **Local LLM Compatibility:** Run local models with OpenAI-compatible servers
46
47
  >
47
48
  > Choose the approach that best fits your needs! For OpenAI compatibility, check the [OpenAI Providers README](webscout/Provider/OPENAI/README.md) or see the [OpenAI-Compatible API Server](#-openai-compatible-api-server) section below.
48
49
 
@@ -73,7 +74,7 @@
73
74
  - **AI Powerhouse:** Access and interact with various AI models through three compatibility options:
74
75
  - **Native API:** Use Webscout's native interfaces for providers like OpenAI, Cohere, Gemini, and many more
75
76
  - **[OpenAI-Compatible Providers](webscout/Provider/OPENAI/README.md):** Seamlessly integrate with various AI providers using standardized OpenAI-compatible interfaces
76
- - **[Local LLMs with Inferno](https://github.com/HelpingAI/inferno):** Run local models with an OpenAI-compatible server (now available as a standalone package)
77
+ - **Local LLMs:** Run local models with OpenAI-compatible servers (see [Inferno documentation](docs/inferno.md))
77
78
  - **[AI Search](webscout/Provider/AISEARCH/README.md):** AI-powered search engines with advanced capabilities
78
79
  </p>
79
80
  </details>
@@ -98,8 +99,7 @@
98
99
  - **[LitPrinter](webscout/litprinter/Readme.md):** Styled console output with rich formatting and colors
99
100
  - **[LitLogger](webscout/litlogger/README.md):** Simplified logging with customizable formats and color schemes
100
101
  - **[LitAgent](webscout/litagent/Readme.md):** Modern user agent generator that keeps your requests undetectable
101
- - **[Scout](webscout/scout/README.md):** Advanced web parsing and crawling library with intelligent HTML/XML parsing
102
- - **[Inferno](https://github.com/HelpingAI/inferno):** Run local LLMs with an OpenAI-compatible API and interactive CLI (now a standalone package: `pip install inferno-llm`)
102
+ - **[Scout](docs/scout.md):** Advanced web parsing and crawling library with intelligent HTML/XML parsing
103
103
  - **[GGUF Conversion](webscout/Extra/gguf.md):** Convert and quantize Hugging Face models to GGUF format
104
104
  - **[Utility Decorators](docs/decorators.md):** Easily measure function execution time (`timeIt`) and add retry logic (`retry`) to any function
105
105
  - **[Stream Sanitization Utilities](docs/sanitize.md):** Advanced tools for cleaning, decoding, and processing data streams
@@ -166,7 +166,7 @@ webscout-server
166
166
 
167
167
  ```bash
168
168
  # Clone the repository
169
- git clone https://github.com/OEvortex/Webscout.git
169
+ git clone https://github.com/pyscout/Webscout.git
170
170
  cd Webscout
171
171
 
172
172
  # Install in development mode with UV
@@ -183,8 +183,8 @@ uv pip install -e ".[dev,api]"
183
183
 
184
184
  ```bash
185
185
  # Pull and run the Docker image
186
- docker pull oevortex/webscout:latest
187
- docker run -it oevortex/webscout:latest
186
+ docker pull pyscout/webscout:latest
187
+ docker run -it pyscout/webscout:latest
188
188
  ```
189
189
 
190
190
  ### 📱 Quick Start Commands
@@ -248,46 +248,6 @@ Webscout provides comprehensive CLI commands for all search engines. See the [Se
248
248
  </p>
249
249
  </details>
250
250
 
251
- <details open>
252
- <summary><b>Inferno LLM Commands</b></summary>
253
- <p>
254
-
255
- Inferno is now a standalone package. Install it separately with:
256
-
257
- ```bash
258
- pip install inferno-llm
259
- ```
260
-
261
- After installation, you can use its CLI for managing and using local LLMs:
262
-
263
- ```bash
264
- inferno --help
265
- ```
266
-
267
- | Command | Description |
268
- | ------------------------ | ----------------------------------------------- |
269
- | `inferno pull <model>` | Download a model from Hugging Face |
270
- | `inferno list` | List downloaded models |
271
- | `inferno serve <model>` | Start a model server with OpenAI-compatible API |
272
- | `inferno run <model>` | Chat with a model interactively |
273
- | `inferno remove <model>` | Remove a downloaded model |
274
- | `inferno version` | Show version information |
275
-
276
- For more information, visit the [Inferno GitHub repository](https://github.com/HelpingAI/inferno) or [PyPI package page](https://pypi.org/project/inferno-llm/).
277
-
278
- </p>
279
- </details>
280
-
281
- > [!NOTE]
282
- > **Hardware requirements for running models with Inferno:**
283
- >
284
- > - Around 2 GB of RAM for 1B models
285
- > - Around 4 GB of RAM for 3B models
286
- > - At least 8 GB of RAM for 7B models
287
- > - 16 GB of RAM for 13B models
288
- > - 32 GB of RAM for 33B models
289
- > - GPU acceleration is recommended for better performance
290
-
291
251
  For detailed information about the OpenAI-compatible API server, including setup, configuration, and usage examples, see the [OpenAI API Server Documentation](docs/openai-api-server.md).
292
252
 
293
253
  <hr/>
@@ -77,7 +77,7 @@ dependencies = [
77
77
  [project.scripts]
78
78
  WEBS = "webscout.cli:main"
79
79
  webscout = "webscout.cli:main"
80
- webscout-server = "webscout.auth.server:main" # Instantly start the OpenAI-compatible API server
80
+ webscout-server = "webscout.server.server:main" # Instantly start the OpenAI-compatible API server
81
81
 
82
82
  [project.urls]
83
83
  Source = "https://github.com/OE-LUCIFER/Webscout"
@@ -95,10 +95,8 @@ api = [
95
95
  "pydantic",
96
96
  "python-multipart",
97
97
  "tiktoken", # Added tiktoken for token counting support
98
- "motor", # MongoDB async driver for enhanced authentication
99
98
  "jinja2", # Template engine for custom Swagger UI
100
- "supabase", # Supabase client for database operations
101
- "websockets>=11.0", # Ensure websockets.asyncio module is available for Supabase realtime
99
+ "websockets>=11.0",
102
100
  "starlette"
103
101
  ]
104
102
 
@@ -1,5 +1,5 @@
1
1
  <div align="center">
2
- <a href="https://github.com/OEvortex/Webscout">
2
+ <a href="https://github.com/pyscout/Webscout">
3
3
  <img src="https://img.shields.io/badge/YTToolkit-YouTube%20Toolkit-red?style=for-the-badge&logo=youtube&logoColor=white" alt="YTToolkit Logo">
4
4
  </a>
5
5
  <h1>YTToolkit</h1>
@@ -1,6 +1,6 @@
1
1
  <div align="center">
2
- <a href="https://github.com/OEvortex/Webscout">
3
- <img src="https://img.shields.io/badge/WebScout-TempMail%20Module-blue?style=for-the-badge&logo=mail&logoColor=white" alt="WebScout TempMail">
2
+ <a href="https://github.com/pyscout/Webscout">
3
+ <img src="https://img.shields.io/badge/WebScout-TempMail%20Toolkit-blue?style=for-the-badge&logo=maildotru&logoColor=white" alt="WebScout TempMail Toolkit">
4
4
  </a>
5
5
 
6
6
  <h1>📧 TempMail</h1>
@@ -484,5 +484,5 @@ Please refer to the main Webscout project's contributing guidelines if you plan
484
484
  <a href="https://buymeacoffee.com/oevortex"><img alt="Buy Me A Coffee" src="https://img.shields.io/badge/Buy%20Me%20A%20Coffee-FFDD00?style=for-the-badge&logo=buymeacoffee&logoColor=black"></a>
485
485
  </div>
486
486
  <p>📧 TempMail - Part of the Webscout Toolkit</p>
487
- <a href="https://github.com/OEvortex/Webscout">Back to Main Webscout Project</a>
487
+ <a href="https://github.com/pyscout/Webscout">Back to Main Webscout Project</a>
488
488
  </div>
@@ -1,5 +1,5 @@
1
1
  <div align="center">
2
- <a href="https://github.com/OEvortex/Webscout">
2
+ <a href="https://github.com/pyscout/Webscout">
3
3
  <img src="https://img.shields.io/badge/WebScout-OpenAI%20Compatible%20Providers-4285F4?style=for-the-badge&logo=openai&logoColor=white" alt="WebScout OpenAI Compatible Providers">
4
4
  </a>
5
5
  <br/>
@@ -7,6 +7,7 @@ from webscout.Provider.TTI.utils import ImageData, ImageResponse
7
7
  from webscout.Provider.TTI.base import TTICompatibleProvider, BaseImages
8
8
  from io import BytesIO
9
9
  from webscout.litagent import LitAgent
10
+ from webscout.scout import Scout
10
11
 
11
12
  try:
12
13
  from PIL import Image
@@ -81,9 +82,8 @@ class Images(BaseImages):
81
82
  time.sleep(3)
82
83
  try:
83
84
  poll_resp = session.get(polling_url, headers=headers, timeout=timeout)
84
- from bs4 import BeautifulSoup
85
- soup = BeautifulSoup(poll_resp.text, "html.parser")
86
- imgs = [img["src"].split("?")[0] for img in soup.select(".img_cont .mimg") if img.get("src")]
85
+ scout = Scout(poll_resp.text, features='html.parser')
86
+ imgs = [img["src"].split("?")[0] for img in scout.select(".img_cont .mimg") if img.attrs.get("src")]
87
87
  if imgs:
88
88
  img_url = imgs[0]
89
89
  break
@@ -232,7 +232,7 @@ class BingImageAI(TTICompatibleProvider):
232
232
 
233
233
  if __name__ == "__main__":
234
234
  from rich import print
235
- client = BingImageAI(cookie="1QyBY4Z1eHBW6fbI25kdM5TrlRGWzn5PFySapCOfvvz04zaounFG660EipVJSOXXvcdeXXLwsWHdDI8bNymucF_QnMHSlY1mc0pPI7e9Ar6o-_7e9Ik5QOe1nkJIe5vz22pibioTqx0IfVKwmVbX22A3bFD7ODaSZalKFr-AuxgAaRVod-giTTry6Ei7RVgisF7BHlkMPPwtCeO234ujgug")
235
+ client = BingImageAI(cookie="1Fw9daLSZzVBJXgevTDuc0jHZ60l4m5IiQEwjRCFOwEkpEBDmw3b8CEAALFSwZ1QBu-rATNkfD0i0gfJmVHeFlogqIriGwxNwT9T6fVREgAQD4_qn0VnQYP681NN4K80t6o-eJXnK1MBhdjxTIaok8173LGmLkEWLqHC0k3dYnF7m2kHRhf1dxjEH3WDI56hxiSPZtnggdzrfnuFAmOgCQQ")
236
236
  response = client.images.create(
237
237
  model="gpt4o",
238
238
  prompt="A cat riding a bicycle",
@@ -1,6 +1,6 @@
1
1
  # webscout/__init__.py
2
2
 
3
- from .search import DuckDuckGoSearch, YepSearch, BingSearch
3
+ from .search import *
4
4
  from .version import __version__
5
5
  from .Provider import *
6
6
  from .Provider.TTI import *
@@ -34,20 +34,19 @@ from webscout.Provider.OPENAI import *
34
34
  try:
35
35
  # Use lazy import to avoid module execution issues
36
36
  def run_api(*args, **kwargs):
37
- """Run the Webscout OpenAI-compatible API server (FastAPI backend)."""
38
- from webscout.auth.server import run_api as _run_api
37
+ from webscout.server.server import run_api as _run_api
39
38
  return _run_api(*args, **kwargs)
40
39
 
41
40
  def start_server(**kwargs):
42
41
  """Start the Webscout OpenAI-compatible API server (FastAPI backend)."""
43
- from webscout.auth.server import run_api as _run_api
42
+ from webscout.server.server import run_api as _run_api
44
43
  return _run_api(**kwargs)
45
44
  except ImportError:
46
45
  # Fallback for environments where the backend is not available
47
46
  def run_api(*args, **kwargs):
48
- raise ImportError("webscout.auth.server.run_api is not available in this environment.")
47
+ raise ImportError("webscout.server.server.run_api is not available in this environment.")
49
48
  def start_server(*args, **kwargs):
50
- raise ImportError("webscout.auth.server.start_server is not available in this environment.")
49
+ raise ImportError("webscout.server.server.start_server is not available in this environment.")
51
50
 
52
51
  # ---
53
52
  # API Documentation
@@ -0,0 +1,17 @@
1
+ try:
2
+ import litprinter
3
+ # If standalone package is found, re-export all its components
4
+ from litprinter import litprint, lit, log, ic, install, uninstall
5
+ from litprinter import LITPrintDebugger, argumentToString
6
+ from litprinter import JARVIS, RICH, MODERN, NEON, CYBERPUNK, create_custom_style
7
+ from litprinter import traceback
8
+ # For compatibility with icecream
9
+ enable = litprinter.enable
10
+ disable = litprinter.disable
11
+
12
+ except ImportError:
13
+ # Raise a more informative error when litprinter is not installed
14
+ raise ImportError(
15
+ "The 'litprinter' package is required but not installed. "
16
+ "Please install it using: pip install litprinter"
17
+ ) from None
@@ -43,7 +43,7 @@ pip install webscout
43
43
  Or install the latest version from GitHub:
44
44
 
45
45
  ```bash
46
- pip install git+https://github.com/OEvortex/Webscout.git
46
+ pip install git+https://github.com/pyscout/Webscout.git
47
47
  ```
48
48
 
49
49
  ## 🚀 Quick Start
@@ -147,10 +147,57 @@ Scout provides powerful tools for navigating and manipulating HTML/XML documents
147
147
  - **Document Manipulation**: Modify, replace, or remove elements
148
148
  - **Dynamic Building**: Easily append or insert new nodes
149
149
 
150
+ #### CSS Selector Support
151
+
152
+ Scout includes a comprehensive CSS selector engine that supports all common selector types:
153
+
150
154
  ```python
151
- # CSS selector support
152
- elements = scout.select('div.content > p')
155
+ # Tag selectors
156
+ paragraphs = scout.select('p')
157
+ divs = scout.select('div')
158
+
159
+ # Class selectors
160
+ items = scout.select('.item') # Single class
161
+ cards = scout.select('div.card') # Tag + class
162
+ special = scout.select('.card.special') # Multiple classes
163
+
164
+ # ID selectors
165
+ header = scout.select_one('#header') # Single element by ID
166
+ menu = scout.select('nav#main-menu') # Tag + ID
167
+
168
+ # Attribute selectors
169
+ links = scout.select('a[href]') # Has attribute
170
+ external = scout.select('a[rel="nofollow"]') # Attribute value
171
+ images = scout.select('img[alt]') # Has alt attribute
172
+
173
+ # Descendant selectors (space)
174
+ nested = scout.select('div p') # Any p inside div
175
+ deep = scout.select('article section p') # Deeply nested
176
+
177
+ # Child selectors (>)
178
+ direct = scout.select('ul > li') # Direct children only
179
+ menu_items = scout.select('nav#menu > ul > li') # Multiple levels
180
+
181
+ # Combined selectors
182
+ complex = scout.select('div.container > p.text[lang="en"]')
183
+ links = scout.select('ol#results > li.item a[href]')
184
+
185
+ # Get first match only
186
+ first = scout.select_one('p.intro')
187
+ ```
153
188
 
189
+ **Supported Selector Types:**
190
+ - **Tag**: `p`, `div`, `a`
191
+ - **Class**: `.class`, `div.class`, `.class1.class2`
192
+ - **ID**: `#id`, `div#id`
193
+ - **Attribute**: `[attr]`, `[attr="value"]`
194
+ - **Descendant**: `div p`, `article section p`
195
+ - **Child**: `div > p`, `ul > li`
196
+ - **Combined**: `p.class#id[attr="value"]`
197
+
198
+ #### Element Navigation
199
+
200
+ ```python
154
201
  # Advanced find with attribute matching
155
202
  results = scout.find_all('a', attrs={'class': 'external', 'rel': 'nofollow'})
156
203
 
@@ -340,6 +387,10 @@ cached_data = scout.cache('parsed_data')
340
387
  - `__init__(markup, features='html.parser', from_encoding=None)`: Initialize with HTML content
341
388
  - `find(name, attrs={}, recursive=True, text=None)`: Find first matching element
342
389
  - `find_all(name, attrs={}, recursive=True, text=None, limit=None)`: Find all matching elements
390
+ - `find_next(name, attrs={}, text=None)`: Find next element in document order
391
+ - `find_all_next(name, attrs={}, text=None, limit=None)`: Find all next elements in document order
392
+ - `find_previous(name, attrs={}, text=None)`: Find previous element in document order
393
+ - `find_all_previous(name, attrs={}, text=None, limit=None)`: Find all previous elements in document order
343
394
  - `select(selector)`: Find elements using CSS selector
344
395
  - `get_text(separator=' ', strip=False)`: Extract text from document
345
396
  - `analyze_text()`: Perform text analysis
@@ -358,7 +409,7 @@ cached_data = scout.cache('parsed_data')
358
409
  - `_crawl_page(url, depth=0)`: Crawl a single page (internal method)
359
410
  - `_is_valid_url(url)`: Check if a URL is valid (internal method)
360
411
 
361
- For detailed API documentation, please refer to the [documentation](https://github.com/OEvortex/Webscout/wiki).
412
+ For detailed API documentation, please refer to the [documentation](https://github.com/pyscout/Webscout/wiki).
362
413
 
363
414
  ## 🔧 Dependencies
364
415
 
@@ -393,9 +444,9 @@ This project is licensed under the MIT License - see the LICENSE file for detail
393
444
  <div align="center">
394
445
  <p>Made with ❤️ by the Webscout team</p>
395
446
  <p>
396
- <a href="https://github.com/OEvortex/Webscout">GitHub</a> •
397
- <a href="https://github.com/OEvortex/Webscout/wiki">Documentation</a> •
398
- <a href="https://github.com/OEvortex/Webscout/issues">Report Bug</a> •
399
- <a href="https://github.com/OEvortex/Webscout/issues">Request Feature</a>
447
+ <a href="https://github.com/pyscout/Webscout">GitHub</a> •
448
+ <a href="https://github.com/pyscout/Webscout/wiki">Documentation</a> •
449
+ <a href="https://github.com/pyscout/Webscout/issues">Report Bug</a> •
450
+ <a href="https://github.com/pyscout/Webscout/issues">Request Feature</a>
400
451
  </p>
401
452
  </div>
@@ -454,6 +454,68 @@ class Scout:
454
454
  pass
455
455
  return siblings
456
456
 
457
+ def find_next(self, name=None, attrs={}, text=None, **kwargs) -> Optional[Tag]:
458
+ """
459
+ Find the next element in document order.
460
+
461
+ Args:
462
+ name: Tag name to search for
463
+ attrs: Attributes to match
464
+ text: Text content to match
465
+ **kwargs: Additional attributes
466
+
467
+ Returns:
468
+ Optional[Tag]: Next matching element or None
469
+ """
470
+ return self._soup.find_next(name, attrs, text, **kwargs)
471
+
472
+ def find_all_next(self, name=None, attrs={}, text=None, limit=None, **kwargs) -> List[Tag]:
473
+ """
474
+ Find all next elements in document order.
475
+
476
+ Args:
477
+ name: Tag name to search for
478
+ attrs: Attributes to match
479
+ text: Text content to match
480
+ limit: Maximum number of results
481
+ **kwargs: Additional attributes
482
+
483
+ Returns:
484
+ List[Tag]: List of matching elements
485
+ """
486
+ return self._soup.find_all_next(name, attrs, text, limit, **kwargs)
487
+
488
+ def find_previous(self, name=None, attrs={}, text=None, **kwargs) -> Optional[Tag]:
489
+ """
490
+ Find the previous element in document order.
491
+
492
+ Args:
493
+ name: Tag name to search for
494
+ attrs: Attributes to match
495
+ text: Text content to match
496
+ **kwargs: Additional attributes
497
+
498
+ Returns:
499
+ Optional[Tag]: Previous matching element or None
500
+ """
501
+ return self._soup.find_previous(name, attrs, text, **kwargs)
502
+
503
+ def find_all_previous(self, name=None, attrs={}, text=None, limit=None, **kwargs) -> List[Tag]:
504
+ """
505
+ Find all previous elements in document order.
506
+
507
+ Args:
508
+ name: Tag name to search for
509
+ attrs: Attributes to match
510
+ text: Text content to match
511
+ limit: Maximum number of results
512
+ **kwargs: Additional attributes
513
+
514
+ Returns:
515
+ List[Tag]: List of matching elements
516
+ """
517
+ return self._soup.find_all_previous(name, attrs, text, limit, **kwargs)
518
+
457
519
  def select(self, selector: str) -> List[Tag]:
458
520
  """
459
521
  Select elements using CSS selector.