webscout 6.1__tar.gz → 6.2__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 (135) hide show
  1. {webscout-6.1/webscout.egg-info → webscout-6.2}/PKG-INFO +44 -128
  2. {webscout-6.1 → webscout-6.2}/README.md +39 -124
  3. {webscout-6.1 → webscout-6.2}/setup.py +6 -4
  4. webscout-6.2/webscout/AIauto.py +176 -0
  5. {webscout-6.1 → webscout-6.2}/webscout/Agents/functioncall.py +2 -2
  6. {webscout-6.1 → webscout-6.2}/webscout/Extra/autollama.py +37 -20
  7. {webscout-6.1 → webscout-6.2}/webscout/Local/formats.py +4 -2
  8. {webscout-6.1 → webscout-6.2}/webscout/Local/utils.py +37 -12
  9. {webscout-6.1 → webscout-6.2}/webscout/Provider/Amigo.py +50 -37
  10. {webscout-6.1 → webscout-6.2}/webscout/Provider/Deepseek.py +7 -6
  11. {webscout-6.1 → webscout-6.2}/webscout/Provider/EDITEE.py +2 -2
  12. {webscout-6.1 → webscout-6.2}/webscout/Provider/GPTWeb.py +1 -1
  13. {webscout-6.1 → webscout-6.2}/webscout/Provider/Llama3.py +1 -1
  14. {webscout-6.1 → webscout-6.2}/webscout/Provider/NinjaChat.py +2 -2
  15. {webscout-6.1 → webscout-6.2}/webscout/Provider/OLLAMA.py +1 -1
  16. {webscout-6.1 → webscout-6.2}/webscout/Provider/Perplexity.py +1 -1
  17. {webscout-6.1 → webscout-6.2}/webscout/Provider/Reka.py +12 -5
  18. webscout-6.2/webscout/Provider/TTI/AIuncensored.py +103 -0
  19. {webscout-6.1 → webscout-6.2}/webscout/Provider/TTI/__init__.py +3 -2
  20. webscout-6.2/webscout/Provider/TTI/talkai.py +116 -0
  21. {webscout-6.1 → webscout-6.2}/webscout/Provider/TeachAnything.py +0 -3
  22. {webscout-6.1 → webscout-6.2}/webscout/Provider/__init__.py +8 -11
  23. webscout-6.2/webscout/Provider/cerebras.py +219 -0
  24. {webscout-6.1 → webscout-6.2}/webscout/Provider/cleeai.py +1 -1
  25. {webscout-6.1 → webscout-6.2}/webscout/Provider/felo_search.py +1 -1
  26. {webscout-6.1 → webscout-6.2}/webscout/Provider/gaurish.py +41 -2
  27. {webscout-6.1 → webscout-6.2}/webscout/Provider/geminiprorealtime.py +1 -1
  28. {webscout-6.1 → webscout-6.2}/webscout/Provider/genspark.py +1 -1
  29. {webscout-6.1 → webscout-6.2}/webscout/Provider/julius.py +4 -3
  30. {webscout-6.1 → webscout-6.2}/webscout/Provider/learnfastai.py +1 -1
  31. webscout-6.1/webscout/Provider/aigames.py → webscout-6.2/webscout/Provider/llmchat.py +74 -84
  32. {webscout-6.1 → webscout-6.2}/webscout/Provider/promptrefine.py +3 -1
  33. webscout-6.2/webscout/Provider/talkai.py +196 -0
  34. {webscout-6.1 → webscout-6.2}/webscout/Provider/turboseek.py +3 -8
  35. {webscout-6.1 → webscout-6.2}/webscout/Provider/tutorai.py +1 -1
  36. webscout-6.2/webscout/__init__.py +23 -0
  37. {webscout-6.1 → webscout-6.2}/webscout/tempid.py +4 -73
  38. {webscout-6.1 → webscout-6.2}/webscout/version.py +1 -1
  39. {webscout-6.1 → webscout-6.2}/webscout/webai.py +1 -1
  40. {webscout-6.1 → webscout-6.2/webscout.egg-info}/PKG-INFO +44 -128
  41. {webscout-6.1 → webscout-6.2}/webscout.egg-info/SOURCES.txt +4 -7
  42. {webscout-6.1 → webscout-6.2}/webscout.egg-info/requires.txt +1 -0
  43. webscout-6.1/webscout/AIauto.py +0 -358
  44. webscout-6.1/webscout/Provider/BasedGPT.py +0 -214
  45. webscout-6.1/webscout/Provider/ChatHub.py +0 -209
  46. webscout-6.1/webscout/Provider/TTI/amigo.py +0 -148
  47. webscout-6.1/webscout/Provider/bixin.py +0 -264
  48. webscout-6.1/webscout/Provider/cerebras.py +0 -199
  49. webscout-6.1/webscout/Provider/xdash.py +0 -182
  50. webscout-6.1/webscout/__init__.py +0 -64
  51. webscout-6.1/webscout/websx_search.py +0 -19
  52. {webscout-6.1 → webscout-6.2}/LICENSE.md +0 -0
  53. {webscout-6.1 → webscout-6.2}/setup.cfg +0 -0
  54. {webscout-6.1 → webscout-6.2}/webscout/AIbase.py +0 -0
  55. {webscout-6.1 → webscout-6.2}/webscout/AIutel.py +0 -0
  56. {webscout-6.1 → webscout-6.2}/webscout/Agents/Onlinesearcher.py +0 -0
  57. {webscout-6.1 → webscout-6.2}/webscout/Agents/__init__.py +0 -0
  58. {webscout-6.1 → webscout-6.2}/webscout/Bard.py +0 -0
  59. {webscout-6.1 → webscout-6.2}/webscout/Bing_search.py +0 -0
  60. {webscout-6.1 → webscout-6.2}/webscout/DWEBS.py +0 -0
  61. {webscout-6.1 → webscout-6.2}/webscout/Extra/__init__.py +0 -0
  62. {webscout-6.1 → webscout-6.2}/webscout/Extra/gguf.py +0 -0
  63. {webscout-6.1 → webscout-6.2}/webscout/Extra/weather.py +0 -0
  64. {webscout-6.1 → webscout-6.2}/webscout/Extra/weather_ascii.py +0 -0
  65. {webscout-6.1 → webscout-6.2}/webscout/LLM.py +0 -0
  66. {webscout-6.1 → webscout-6.2}/webscout/Local/__init__.py +0 -0
  67. {webscout-6.1 → webscout-6.2}/webscout/Local/_version.py +0 -0
  68. {webscout-6.1 → webscout-6.2}/webscout/Local/model.py +0 -0
  69. {webscout-6.1 → webscout-6.2}/webscout/Local/samplers.py +0 -0
  70. {webscout-6.1 → webscout-6.2}/webscout/Local/thread.py +0 -0
  71. {webscout-6.1 → webscout-6.2}/webscout/Local/ui.py +0 -0
  72. {webscout-6.1 → webscout-6.2}/webscout/Provider/AI21.py +0 -0
  73. {webscout-6.1 → webscout-6.2}/webscout/Provider/Andi.py +0 -0
  74. {webscout-6.1 → webscout-6.2}/webscout/Provider/Bing.py +0 -0
  75. {webscout-6.1 → webscout-6.2}/webscout/Provider/Blackboxai.py +0 -0
  76. {webscout-6.1 → webscout-6.2}/webscout/Provider/ChatGPTES.py +0 -0
  77. {webscout-6.1 → webscout-6.2}/webscout/Provider/Chatify.py +0 -0
  78. {webscout-6.1 → webscout-6.2}/webscout/Provider/Cloudflare.py +0 -0
  79. {webscout-6.1 → webscout-6.2}/webscout/Provider/Cohere.py +0 -0
  80. {webscout-6.1 → webscout-6.2}/webscout/Provider/DARKAI.py +0 -0
  81. {webscout-6.1 → webscout-6.2}/webscout/Provider/Deepinfra.py +0 -0
  82. {webscout-6.1 → webscout-6.2}/webscout/Provider/DiscordRocks.py +0 -0
  83. {webscout-6.1 → webscout-6.2}/webscout/Provider/Farfalle.py +0 -0
  84. {webscout-6.1 → webscout-6.2}/webscout/Provider/Free2GPT.py +0 -0
  85. {webscout-6.1 → webscout-6.2}/webscout/Provider/Gemini.py +0 -0
  86. {webscout-6.1 → webscout-6.2}/webscout/Provider/Groq.py +0 -0
  87. {webscout-6.1 → webscout-6.2}/webscout/Provider/Koboldai.py +0 -0
  88. {webscout-6.1 → webscout-6.2}/webscout/Provider/Llama.py +0 -0
  89. {webscout-6.1 → webscout-6.2}/webscout/Provider/Openai.py +0 -0
  90. {webscout-6.1 → webscout-6.2}/webscout/Provider/PI.py +0 -0
  91. {webscout-6.1 → webscout-6.2}/webscout/Provider/Phind.py +0 -0
  92. {webscout-6.1 → webscout-6.2}/webscout/Provider/PizzaGPT.py +0 -0
  93. {webscout-6.1 → webscout-6.2}/webscout/Provider/RUBIKSAI.py +0 -0
  94. {webscout-6.1 → webscout-6.2}/webscout/Provider/TTI/Nexra.py +0 -0
  95. {webscout-6.1 → webscout-6.2}/webscout/Provider/TTI/PollinationsAI.py +0 -0
  96. {webscout-6.1 → webscout-6.2}/webscout/Provider/TTI/WebSimAI.py +0 -0
  97. {webscout-6.1 → webscout-6.2}/webscout/Provider/TTI/aiforce.py +0 -0
  98. {webscout-6.1 → webscout-6.2}/webscout/Provider/TTI/artbit.py +0 -0
  99. {webscout-6.1 → webscout-6.2}/webscout/Provider/TTI/blackboximage.py +0 -0
  100. {webscout-6.1 → webscout-6.2}/webscout/Provider/TTI/deepinfra.py +0 -0
  101. {webscout-6.1 → webscout-6.2}/webscout/Provider/TTI/huggingface.py +0 -0
  102. {webscout-6.1 → webscout-6.2}/webscout/Provider/TTI/imgninza.py +0 -0
  103. {webscout-6.1 → webscout-6.2}/webscout/Provider/TTS/__init__.py +0 -0
  104. {webscout-6.1 → webscout-6.2}/webscout/Provider/TTS/parler.py +0 -0
  105. {webscout-6.1 → webscout-6.2}/webscout/Provider/TTS/streamElements.py +0 -0
  106. {webscout-6.1 → webscout-6.2}/webscout/Provider/TTS/voicepod.py +0 -0
  107. {webscout-6.1 → webscout-6.2}/webscout/Provider/Youchat.py +0 -0
  108. {webscout-6.1 → webscout-6.2}/webscout/Provider/ai4chat.py +0 -0
  109. {webscout-6.1 → webscout-6.2}/webscout/Provider/aimathgpt.py +0 -0
  110. {webscout-6.1 → webscout-6.2}/webscout/Provider/bagoodex.py +0 -0
  111. {webscout-6.1 → webscout-6.2}/webscout/Provider/elmo.py +0 -0
  112. {webscout-6.1 → webscout-6.2}/webscout/Provider/geminiapi.py +0 -0
  113. {webscout-6.1 → webscout-6.2}/webscout/Provider/koala.py +0 -0
  114. {webscout-6.1 → webscout-6.2}/webscout/Provider/lepton.py +0 -0
  115. {webscout-6.1 → webscout-6.2}/webscout/Provider/llamatutor.py +0 -0
  116. {webscout-6.1 → webscout-6.2}/webscout/Provider/meta.py +0 -0
  117. {webscout-6.1 → webscout-6.2}/webscout/Provider/prefind.py +0 -0
  118. {webscout-6.1 → webscout-6.2}/webscout/Provider/twitterclone.py +0 -0
  119. {webscout-6.1 → webscout-6.2}/webscout/Provider/upstage.py +0 -0
  120. {webscout-6.1 → webscout-6.2}/webscout/Provider/x0gpt.py +0 -0
  121. {webscout-6.1 → webscout-6.2}/webscout/Provider/yep.py +0 -0
  122. {webscout-6.1 → webscout-6.2}/webscout/YTdownloader.py +0 -0
  123. {webscout-6.1 → webscout-6.2}/webscout/__main__.py +0 -0
  124. {webscout-6.1 → webscout-6.2}/webscout/cli.py +0 -0
  125. {webscout-6.1 → webscout-6.2}/webscout/exceptions.py +0 -0
  126. {webscout-6.1 → webscout-6.2}/webscout/g4f.py +0 -0
  127. {webscout-6.1 → webscout-6.2}/webscout/models.py +0 -0
  128. {webscout-6.1 → webscout-6.2}/webscout/requestsHTMLfix.py +0 -0
  129. {webscout-6.1 → webscout-6.2}/webscout/transcriber.py +0 -0
  130. {webscout-6.1 → webscout-6.2}/webscout/utils.py +0 -0
  131. {webscout-6.1 → webscout-6.2}/webscout/webscout_search.py +0 -0
  132. {webscout-6.1 → webscout-6.2}/webscout/webscout_search_async.py +0 -0
  133. {webscout-6.1 → webscout-6.2}/webscout.egg-info/dependency_links.txt +0 -0
  134. {webscout-6.1 → webscout-6.2}/webscout.egg-info/entry_points.txt +0 -0
  135. {webscout-6.1 → webscout-6.2}/webscout.egg-info/top_level.txt +0 -0
@@ -1,13 +1,12 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: webscout
3
- Version: 6.1
3
+ Version: 6.2
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: OEvortex
6
6
  Author-email: helpingai5@gmail.com
7
7
  License: HelpingAI
8
- Project-URL: Documentation, https://github.com/OE-LUCIFER/Webscout/wiki
9
- Project-URL: Source, https://github.com/OE-LUCIFER/Webscout
10
- Project-URL: Tracker, https://github.com/OE-LUCIFER/Webscout/issues
8
+ Project-URL: Source, https://github.com/HelpingAI/Webscout
9
+ Project-URL: Tracker, https://github.com/HelpingAI/Webscout/issues
11
10
  Project-URL: YouTube, https://youtube.com/@OEvortex
12
11
  Classifier: Development Status :: 5 - Production/Stable
13
12
  Classifier: Intended Audience :: Developers
@@ -22,6 +21,7 @@ Classifier: Programming Language :: Python :: 3.12
22
21
  Classifier: Programming Language :: Python :: Implementation :: CPython
23
22
  Classifier: Topic :: Internet :: WWW/HTTP :: Indexing/Search
24
23
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
24
+ Requires-Python: >=3.7
25
25
  Description-Content-Type: text/markdown
26
26
  License-File: LICENSE.md
27
27
  Requires-Dist: docstring_inheritance
@@ -60,6 +60,7 @@ Requires-Dist: gradio_client
60
60
  Requires-Dist: psutil
61
61
  Requires-Dist: colorlog
62
62
  Requires-Dist: yaspin
63
+ Requires-Dist: cerebras-cloud-sdk
63
64
  Provides-Extra: dev
64
65
  Requires-Dist: ruff>=0.1.6; extra == "dev"
65
66
  Requires-Dist: pytest>=7.4.2; extra == "dev"
@@ -72,9 +73,9 @@ Requires-Dist: unicorn; extra == "local"
72
73
 
73
74
  <div align="center">
74
75
  <!-- Replace `#` with your actual links -->
75
- <a href="https://t.me/devsdocode"><img alt="Telegram" src="https://img.shields.io/badge/Telegram-2CA5E0?style=for-the-badge&logo=telegram&logoColor=white"></a>
76
- <a href="https://www.instagram.com/sree.shades_/"><img alt="Instagram" src="https://img.shields.io/badge/Instagram-E4405F?style=for-the-badge&logo=instagram&logoColor=white"></a>
77
- <a href="https://www.linkedin.com/in/developer-sreejan/"><img alt="LinkedIn" src="https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white"></a>
76
+ <a href="https://t.me/official_helpingai"><img alt="Telegram" src="https://img.shields.io/badge/Telegram-2CA5E0?style=for-the-badge&logo=telegram&logoColor=white"></a>
77
+ <a href="https://www.instagram.com/oevortex/"><img alt="Instagram" src="https://img.shields.io/badge/Instagram-E4405F?style=for-the-badge&logo=instagram&logoColor=white"></a>
78
+ <a href="https://www.linkedin.com/in/oe-vortex-29a407265/"><img alt="LinkedIn" src="https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white"></a>
78
79
  <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>
79
80
  </div>
80
81
 
@@ -265,90 +266,41 @@ weather = w.get("Qazigund")
265
266
  print(weather)
266
267
  ```
267
268
 
268
- ## ✉️ Tempmail and 📞 Temp Number
269
+ ## ✉️ TempMail and VNEngine
269
270
 
270
- ### Temp Number
271
- ```python
272
- from rich.console import Console
273
- from webscout import tempid
274
-
275
- def main():
276
- console = Console()
277
- phone = tempid.TemporaryPhoneNumber()
278
-
279
- try:
280
- # Get a temporary phone number for a specific country (or random)
281
- number = phone.get_number(country="Finland")
282
- console.print(f"Your temporary phone number: [bold cyan]{number}[/bold cyan]")
283
-
284
- # Pause execution briefly (replace with your actual logic)
285
- # import time module
286
- import time
287
- time.sleep(30) # Adjust the waiting time as needed
288
-
289
- # Retrieve and print messages
290
- messages = phone.get_messages(number)
291
- if messages:
292
- # Access individual messages using indexing:
293
- console.print(f"[bold green]{messages[0].frm}:[/] {messages[0].content}")
294
- # (Add more lines if you expect multiple messages)
295
- else:
296
- console.print("No messages received.")
297
-
298
- except Exception as e:
299
- console.print(f"[bold red]An error occurred: {e}")
300
-
301
- if __name__ == "__main__":
302
- main()
303
-
304
- ```
305
-
306
- ### Tempmail
307
271
  ```python
272
+ import json
308
273
  import asyncio
309
- from rich.console import Console
310
- from rich.table import Table
311
- from rich.text import Text
312
- from webscout import tempid
313
-
314
- async def main() -> None:
315
- console = Console()
316
- client = tempid.Client()
274
+ from webscout import VNEngine
275
+ from webscout import TempMail
276
+
277
+ async def main():
278
+ vn = VNEngine()
279
+ countries = vn.get_online_countries()
280
+ if countries:
281
+ country = countries[0]['country']
282
+ numbers = vn.get_country_numbers(country)
283
+ if numbers:
284
+ number = numbers[0]['full_number']
285
+ inbox = vn.get_number_inbox(country, number)
286
+
287
+ # Serialize inbox data to JSON string
288
+ json_data = json.dumps(inbox, ensure_ascii=False, indent=4)
289
+
290
+ # Print with UTF-8 encoding
291
+ print(json_data)
317
292
 
318
- try:
293
+ async with TempMail() as client:
319
294
  domains = await client.get_domains()
320
- if not domains:
321
- console.print("[bold red]No domains available. Please try again later.")
322
- return
323
-
324
- email = await client.create_email(domain=domains[0].name)
325
- console.print(f"Your temporary email: [bold cyan]{email.email}[/bold cyan]")
326
- console.print(f"Token for accessing the email: [bold cyan]{email.token}[/bold cyan]")
327
-
328
- while True:
329
- messages = await client.get_messages(email.email)
330
- if messages is not None:
331
- break
332
-
333
- if messages:
334
- table = Table(show_header=True, header_style="bold magenta")
335
- table.add_column("From", style="bold cyan")
336
- table.add_column("Subject", style="bold yellow")
337
- table.add_column("Body", style="bold green")
338
- for message in messages:
339
- body_preview = Text(message.body_text if message.body_text else "No body")
340
- table.add_row(message.email_from or "Unknown", message.subject or "No Subject", body_preview)
341
- console.print(table)
342
- else:
343
- console.print("No messages found.")
344
-
345
- except Exception as e:
346
- console.print(f"[bold red]An error occurred: {e}")
347
-
348
- finally:
349
- await client.close()
295
+ print("Available Domains:", domains)
296
+ email_response = await client.create_email(alias="testuser")
297
+ print("Created Email:", email_response)
298
+ messages = await client.get_messages(email_response.email)
299
+ print("Messages:", messages)
300
+ await client.delete_email(email_response.email, email_response.token)
301
+ print("Email Deleted")
350
302
 
351
- if __name__ == '__main__':
303
+ if __name__ == "__main__":
352
304
  asyncio.run(main())
353
305
  ```
354
306
 
@@ -607,16 +559,6 @@ with WEBS() as WEBS:
607
559
  print(r)
608
560
  ```
609
561
 
610
- ## 🌐 WEBSX - Another Web Search Tool
611
-
612
- ```python
613
- from webscout import WEBSX
614
- s = "Python development tools"
615
-
616
- result = WEBSX(s)
617
-
618
- print(result)
619
- ```
620
562
 
621
563
  ## 🎭 ALL Acts
622
564
 
@@ -876,7 +818,7 @@ print(result)
876
818
  ___
877
819
  </details>
878
820
 
879
- ### 🖼️ Text to Images - DeepInfraImager, PollinationsAI, BlackboxAIImager, AiForceimager, NexraImager, HFimager, ArtbitImager, NinjaImager, WebSimAI, AmigoImager
821
+ ### 🖼️ Text to Images - DeepInfraImager, PollinationsAI, BlackboxAIImager, AiForceimager, NexraImager, HFimager, ArtbitImager, NinjaImager, WebSimAI, AIUncensoredImager, TalkaiImager
880
822
 
881
823
  **Every TTI provider has the same usage code, you just need to change the import.**
882
824
 
@@ -1133,29 +1075,6 @@ response_str = a.chat(prompt)
1133
1075
  print(response_str)
1134
1076
  ```
1135
1077
 
1136
- ### `BasedGPT` - Chat with GPT
1137
-
1138
- ```python
1139
- from webscout import BasedGPT
1140
-
1141
- # Initialize the BasedGPT provider
1142
- basedgpt = BasedGPT(
1143
- is_conversation=True, # Chat conversationally
1144
- max_tokens=600, # Maximum tokens to generate
1145
- timeout=30, # HTTP request timeout
1146
- intro="You are a helpful and friendly AI.", # Introductory prompt
1147
- filepath="chat_history.txt", # File to store conversation history
1148
- update_file=True, # Update the chat history file
1149
- )
1150
-
1151
- # Send a prompt to the AI
1152
- prompt = "What is the meaning of life?"
1153
- response = basedgpt.chat(prompt)
1154
-
1155
- # Print the AI's response
1156
- print(response)
1157
- ```
1158
-
1159
1078
  ### `DeepSeek` - Chat with DeepSeek
1160
1079
 
1161
1080
  ```python
@@ -1437,7 +1356,7 @@ if __name__ == "__main__":
1437
1356
  main()
1438
1357
  ```
1439
1358
 
1440
- ### LLAMA3, pizzagpt, RUBIKSAI, Koala, Darkai, AI4Chat, Farfalle, PIAI, Felo, XDASH, Julius, YouChat, YEPCHAT, Cloudflare, TurboSeek, Editee, AI21, Chatify, Cerebras, X0GPT, Lepton, GEMINIAPI, Cleeai, Elmo, Genspark, Upstage, Free2GPT, Bing, DiscordRocks, GPTWeb, AIGameIO, LlamaTutor, PromptRefine, AIUncensored, TutorAI, Bixin, ChatGPTES, Bagoodex, ChatHub, AmigoChat, AIMathGPT, GaurishCerebras, NinjaChat, GeminiPro
1359
+ ### LLAMA3, pizzagpt, RUBIKSAI, Koala, Darkai, AI4Chat, Farfalle, PIAI, Felo, Julius, YouChat, YEPCHAT, Cloudflare, TurboSeek, Editee, AI21, Chatify, Cerebras, X0GPT, Lepton, GEMINIAPI, Cleeai, Elmo, Genspark, Upstage, Free2GPT, Bing, DiscordRocks, GPTWeb, LlamaTutor, PromptRefine, AIUncensored, TutorAI, ChatGPTES, Bagoodex, ChatHub, AmigoChat, AIMathGPT, GaurishCerebras, NinjaChat, GeminiPro, Talkai, LLMChat
1441
1360
 
1442
1361
  Code is similar to other providers.
1443
1362
 
@@ -1588,7 +1507,7 @@ Webscout provides tools to convert and quantize Hugging Face models into the GGU
1588
1507
  **Example:**
1589
1508
 
1590
1509
  ```python
1591
- from webscout import gguf
1510
+ from webscout.Extra import gguf
1592
1511
  """
1593
1512
  Valid quantization methods:
1594
1513
  "q2_k", "q3_k_l", "q3_k_m", "q3_k_s",
@@ -1609,7 +1528,7 @@ gguf.convert(
1609
1528
  Webscout's `autollama` utility downloads a model from Hugging Face and then automatically makes it Ollama-ready.
1610
1529
 
1611
1530
  ```python
1612
- from webscout import autollama
1531
+ from webscout.Extra import autollama
1613
1532
 
1614
1533
  model_path = "Vortex4ai/Jarvis-0.5B"
1615
1534
  gguf_file = "test2-q4_k_m.gguf"
@@ -1643,9 +1562,9 @@ python -m webscout.webai webai --provider "phind" --rawdog
1643
1562
 
1644
1563
  <div align="center">
1645
1564
  <!-- Replace `#` with your actual links -->
1646
- <a href="https://t.me/devsdocode"><img alt="Telegram" src="https://img.shields.io/badge/Telegram-2CA5E0?style=for-the-badge&logo=telegram&logoColor=white"></a>
1647
- <a href="https://www.instagram.com/sree.shades_/"><img alt="Instagram" src="https://img.shields.io/badge/Instagram-E4405F?style=for-the-badge&logo=instagram&logoColor=white"></a>
1648
- <a href="https://www.linkedin.com/in/developer-sreejan/"><img alt="LinkedIn" src="https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white"></a>
1565
+ <a href="https://t.me/official_helpingai"><img alt="Telegram" src="https://img.shields.io/badge/Telegram-2CA5E0?style=for-the-badge&logo=telegram&logoColor=white"></a>
1566
+ <a href="https://www.instagram.com/oevortex/"><img alt="Instagram" src="https://img.shields.io/badge/Instagram-E4405F?style=for-the-badge&logo=instagram&logoColor=white"></a>
1567
+ <a href="https://www.linkedin.com/in/oe-vortex-29a407265/"><img alt="LinkedIn" src="https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white"></a>
1649
1568
  <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>
1650
1569
  </div>
1651
1570
 
@@ -1670,9 +1589,6 @@ Contributions are welcome! If you'd like to contribute to Webscout, please follo
1670
1589
  4. Push your branch to your forked repository.
1671
1590
  5. Submit a pull request to the main repository.
1672
1591
 
1673
- ## 📜 License
1674
-
1675
- This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
1676
1592
 
1677
1593
  ## 🙏 Acknowledgments
1678
1594
 
@@ -1,8 +1,8 @@
1
1
  <div align="center">
2
2
  <!-- Replace `#` with your actual links -->
3
- <a href="https://t.me/devsdocode"><img alt="Telegram" src="https://img.shields.io/badge/Telegram-2CA5E0?style=for-the-badge&logo=telegram&logoColor=white"></a>
4
- <a href="https://www.instagram.com/sree.shades_/"><img alt="Instagram" src="https://img.shields.io/badge/Instagram-E4405F?style=for-the-badge&logo=instagram&logoColor=white"></a>
5
- <a href="https://www.linkedin.com/in/developer-sreejan/"><img alt="LinkedIn" src="https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white"></a>
3
+ <a href="https://t.me/official_helpingai"><img alt="Telegram" src="https://img.shields.io/badge/Telegram-2CA5E0?style=for-the-badge&logo=telegram&logoColor=white"></a>
4
+ <a href="https://www.instagram.com/oevortex/"><img alt="Instagram" src="https://img.shields.io/badge/Instagram-E4405F?style=for-the-badge&logo=instagram&logoColor=white"></a>
5
+ <a href="https://www.linkedin.com/in/oe-vortex-29a407265/"><img alt="LinkedIn" src="https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white"></a>
6
6
  <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>
7
7
  </div>
8
8
 
@@ -193,90 +193,41 @@ weather = w.get("Qazigund")
193
193
  print(weather)
194
194
  ```
195
195
 
196
- ## ✉️ Tempmail and 📞 Temp Number
196
+ ## ✉️ TempMail and VNEngine
197
197
 
198
- ### Temp Number
199
- ```python
200
- from rich.console import Console
201
- from webscout import tempid
202
-
203
- def main():
204
- console = Console()
205
- phone = tempid.TemporaryPhoneNumber()
206
-
207
- try:
208
- # Get a temporary phone number for a specific country (or random)
209
- number = phone.get_number(country="Finland")
210
- console.print(f"Your temporary phone number: [bold cyan]{number}[/bold cyan]")
211
-
212
- # Pause execution briefly (replace with your actual logic)
213
- # import time module
214
- import time
215
- time.sleep(30) # Adjust the waiting time as needed
216
-
217
- # Retrieve and print messages
218
- messages = phone.get_messages(number)
219
- if messages:
220
- # Access individual messages using indexing:
221
- console.print(f"[bold green]{messages[0].frm}:[/] {messages[0].content}")
222
- # (Add more lines if you expect multiple messages)
223
- else:
224
- console.print("No messages received.")
225
-
226
- except Exception as e:
227
- console.print(f"[bold red]An error occurred: {e}")
228
-
229
- if __name__ == "__main__":
230
- main()
231
-
232
- ```
233
-
234
- ### Tempmail
235
198
  ```python
199
+ import json
236
200
  import asyncio
237
- from rich.console import Console
238
- from rich.table import Table
239
- from rich.text import Text
240
- from webscout import tempid
241
-
242
- async def main() -> None:
243
- console = Console()
244
- client = tempid.Client()
201
+ from webscout import VNEngine
202
+ from webscout import TempMail
203
+
204
+ async def main():
205
+ vn = VNEngine()
206
+ countries = vn.get_online_countries()
207
+ if countries:
208
+ country = countries[0]['country']
209
+ numbers = vn.get_country_numbers(country)
210
+ if numbers:
211
+ number = numbers[0]['full_number']
212
+ inbox = vn.get_number_inbox(country, number)
213
+
214
+ # Serialize inbox data to JSON string
215
+ json_data = json.dumps(inbox, ensure_ascii=False, indent=4)
216
+
217
+ # Print with UTF-8 encoding
218
+ print(json_data)
245
219
 
246
- try:
220
+ async with TempMail() as client:
247
221
  domains = await client.get_domains()
248
- if not domains:
249
- console.print("[bold red]No domains available. Please try again later.")
250
- return
251
-
252
- email = await client.create_email(domain=domains[0].name)
253
- console.print(f"Your temporary email: [bold cyan]{email.email}[/bold cyan]")
254
- console.print(f"Token for accessing the email: [bold cyan]{email.token}[/bold cyan]")
255
-
256
- while True:
257
- messages = await client.get_messages(email.email)
258
- if messages is not None:
259
- break
260
-
261
- if messages:
262
- table = Table(show_header=True, header_style="bold magenta")
263
- table.add_column("From", style="bold cyan")
264
- table.add_column("Subject", style="bold yellow")
265
- table.add_column("Body", style="bold green")
266
- for message in messages:
267
- body_preview = Text(message.body_text if message.body_text else "No body")
268
- table.add_row(message.email_from or "Unknown", message.subject or "No Subject", body_preview)
269
- console.print(table)
270
- else:
271
- console.print("No messages found.")
272
-
273
- except Exception as e:
274
- console.print(f"[bold red]An error occurred: {e}")
275
-
276
- finally:
277
- await client.close()
222
+ print("Available Domains:", domains)
223
+ email_response = await client.create_email(alias="testuser")
224
+ print("Created Email:", email_response)
225
+ messages = await client.get_messages(email_response.email)
226
+ print("Messages:", messages)
227
+ await client.delete_email(email_response.email, email_response.token)
228
+ print("Email Deleted")
278
229
 
279
- if __name__ == '__main__':
230
+ if __name__ == "__main__":
280
231
  asyncio.run(main())
281
232
  ```
282
233
 
@@ -535,16 +486,6 @@ with WEBS() as WEBS:
535
486
  print(r)
536
487
  ```
537
488
 
538
- ## 🌐 WEBSX - Another Web Search Tool
539
-
540
- ```python
541
- from webscout import WEBSX
542
- s = "Python development tools"
543
-
544
- result = WEBSX(s)
545
-
546
- print(result)
547
- ```
548
489
 
549
490
  ## 🎭 ALL Acts
550
491
 
@@ -804,7 +745,7 @@ print(result)
804
745
  ___
805
746
  </details>
806
747
 
807
- ### 🖼️ Text to Images - DeepInfraImager, PollinationsAI, BlackboxAIImager, AiForceimager, NexraImager, HFimager, ArtbitImager, NinjaImager, WebSimAI, AmigoImager
748
+ ### 🖼️ Text to Images - DeepInfraImager, PollinationsAI, BlackboxAIImager, AiForceimager, NexraImager, HFimager, ArtbitImager, NinjaImager, WebSimAI, AIUncensoredImager, TalkaiImager
808
749
 
809
750
  **Every TTI provider has the same usage code, you just need to change the import.**
810
751
 
@@ -1061,29 +1002,6 @@ response_str = a.chat(prompt)
1061
1002
  print(response_str)
1062
1003
  ```
1063
1004
 
1064
- ### `BasedGPT` - Chat with GPT
1065
-
1066
- ```python
1067
- from webscout import BasedGPT
1068
-
1069
- # Initialize the BasedGPT provider
1070
- basedgpt = BasedGPT(
1071
- is_conversation=True, # Chat conversationally
1072
- max_tokens=600, # Maximum tokens to generate
1073
- timeout=30, # HTTP request timeout
1074
- intro="You are a helpful and friendly AI.", # Introductory prompt
1075
- filepath="chat_history.txt", # File to store conversation history
1076
- update_file=True, # Update the chat history file
1077
- )
1078
-
1079
- # Send a prompt to the AI
1080
- prompt = "What is the meaning of life?"
1081
- response = basedgpt.chat(prompt)
1082
-
1083
- # Print the AI's response
1084
- print(response)
1085
- ```
1086
-
1087
1005
  ### `DeepSeek` - Chat with DeepSeek
1088
1006
 
1089
1007
  ```python
@@ -1365,7 +1283,7 @@ if __name__ == "__main__":
1365
1283
  main()
1366
1284
  ```
1367
1285
 
1368
- ### LLAMA3, pizzagpt, RUBIKSAI, Koala, Darkai, AI4Chat, Farfalle, PIAI, Felo, XDASH, Julius, YouChat, YEPCHAT, Cloudflare, TurboSeek, Editee, AI21, Chatify, Cerebras, X0GPT, Lepton, GEMINIAPI, Cleeai, Elmo, Genspark, Upstage, Free2GPT, Bing, DiscordRocks, GPTWeb, AIGameIO, LlamaTutor, PromptRefine, AIUncensored, TutorAI, Bixin, ChatGPTES, Bagoodex, ChatHub, AmigoChat, AIMathGPT, GaurishCerebras, NinjaChat, GeminiPro
1286
+ ### LLAMA3, pizzagpt, RUBIKSAI, Koala, Darkai, AI4Chat, Farfalle, PIAI, Felo, Julius, YouChat, YEPCHAT, Cloudflare, TurboSeek, Editee, AI21, Chatify, Cerebras, X0GPT, Lepton, GEMINIAPI, Cleeai, Elmo, Genspark, Upstage, Free2GPT, Bing, DiscordRocks, GPTWeb, LlamaTutor, PromptRefine, AIUncensored, TutorAI, ChatGPTES, Bagoodex, ChatHub, AmigoChat, AIMathGPT, GaurishCerebras, NinjaChat, GeminiPro, Talkai, LLMChat
1369
1287
 
1370
1288
  Code is similar to other providers.
1371
1289
 
@@ -1516,7 +1434,7 @@ Webscout provides tools to convert and quantize Hugging Face models into the GGU
1516
1434
  **Example:**
1517
1435
 
1518
1436
  ```python
1519
- from webscout import gguf
1437
+ from webscout.Extra import gguf
1520
1438
  """
1521
1439
  Valid quantization methods:
1522
1440
  "q2_k", "q3_k_l", "q3_k_m", "q3_k_s",
@@ -1537,7 +1455,7 @@ gguf.convert(
1537
1455
  Webscout's `autollama` utility downloads a model from Hugging Face and then automatically makes it Ollama-ready.
1538
1456
 
1539
1457
  ```python
1540
- from webscout import autollama
1458
+ from webscout.Extra import autollama
1541
1459
 
1542
1460
  model_path = "Vortex4ai/Jarvis-0.5B"
1543
1461
  gguf_file = "test2-q4_k_m.gguf"
@@ -1571,9 +1489,9 @@ python -m webscout.webai webai --provider "phind" --rawdog
1571
1489
 
1572
1490
  <div align="center">
1573
1491
  <!-- Replace `#` with your actual links -->
1574
- <a href="https://t.me/devsdocode"><img alt="Telegram" src="https://img.shields.io/badge/Telegram-2CA5E0?style=for-the-badge&logo=telegram&logoColor=white"></a>
1575
- <a href="https://www.instagram.com/sree.shades_/"><img alt="Instagram" src="https://img.shields.io/badge/Instagram-E4405F?style=for-the-badge&logo=instagram&logoColor=white"></a>
1576
- <a href="https://www.linkedin.com/in/developer-sreejan/"><img alt="LinkedIn" src="https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white"></a>
1492
+ <a href="https://t.me/official_helpingai"><img alt="Telegram" src="https://img.shields.io/badge/Telegram-2CA5E0?style=for-the-badge&logo=telegram&logoColor=white"></a>
1493
+ <a href="https://www.instagram.com/oevortex/"><img alt="Instagram" src="https://img.shields.io/badge/Instagram-E4405F?style=for-the-badge&logo=instagram&logoColor=white"></a>
1494
+ <a href="https://www.linkedin.com/in/oe-vortex-29a407265/"><img alt="LinkedIn" src="https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white"></a>
1577
1495
  <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>
1578
1496
  </div>
1579
1497
 
@@ -1598,9 +1516,6 @@ Contributions are welcome! If you'd like to contribute to Webscout, please follo
1598
1516
  4. Push your branch to your forked repository.
1599
1517
  5. Submit a pull request to the main repository.
1600
1518
 
1601
- ## 📜 License
1602
-
1603
- This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
1604
1519
 
1605
1520
  ## 🙏 Acknowledgments
1606
1521
 
@@ -1,5 +1,6 @@
1
1
  from setuptools import setup, find_packages
2
2
  from webscout.version import __prog__, __version__
3
+
3
4
  with open("README.md", encoding="utf-8") as f:
4
5
  README = f.read()
5
6
 
@@ -12,6 +13,7 @@ setup(
12
13
  author="OEvortex",
13
14
  author_email="helpingai5@gmail.com",
14
15
  packages=find_packages(),
16
+ python_requires=">=3.7",
15
17
  classifiers=[
16
18
  "Development Status :: 5 - Production/Stable",
17
19
  "Intended Audience :: Developers",
@@ -63,7 +65,8 @@ setup(
63
65
  "gradio_client",
64
66
  "psutil",
65
67
  "colorlog",
66
- "yaspin"
68
+ "yaspin",
69
+ "cerebras-cloud-sdk",
67
70
  ],
68
71
  entry_points={
69
72
  "console_scripts": [
@@ -86,9 +89,8 @@ setup(
86
89
  },
87
90
  license="HelpingAI",
88
91
  project_urls={
89
- "Documentation": "https://github.com/OE-LUCIFER/Webscout/wiki",
90
- "Source": "https://github.com/OE-LUCIFER/Webscout",
91
- "Tracker": "https://github.com/OE-LUCIFER/Webscout/issues",
92
+ "Source": "https://github.com/HelpingAI/Webscout",
93
+ "Tracker": "https://github.com/HelpingAI/Webscout/issues",
92
94
  "YouTube": "https://youtube.com/@OEvortex",
93
95
  },
94
96
  )