webscout 5.9__py3-none-any.whl → 6.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of webscout might be problematic. Click here for more details.
- webscout/Agents/Onlinesearcher.py +22 -10
- webscout/Agents/functioncall.py +2 -2
- webscout/Bard.py +21 -21
- webscout/Local/__init__.py +6 -7
- webscout/Local/formats.py +404 -194
- webscout/Local/model.py +1074 -477
- webscout/Local/samplers.py +108 -144
- webscout/Local/thread.py +251 -410
- webscout/Local/ui.py +401 -0
- webscout/Local/utils.py +308 -131
- webscout/Provider/Amigo.py +5 -3
- webscout/Provider/ChatHub.py +209 -0
- webscout/Provider/Chatify.py +3 -3
- webscout/Provider/Cloudflare.py +3 -3
- webscout/Provider/DARKAI.py +1 -1
- webscout/Provider/Deepinfra.py +95 -389
- webscout/Provider/Deepseek.py +4 -6
- webscout/Provider/DiscordRocks.py +3 -3
- webscout/Provider/Free2GPT.py +3 -3
- webscout/Provider/NinjaChat.py +200 -0
- webscout/Provider/OLLAMA.py +4 -4
- webscout/Provider/RUBIKSAI.py +3 -3
- webscout/Provider/TTI/Nexra.py +3 -3
- webscout/Provider/TTI/__init__.py +2 -1
- webscout/Provider/TTI/aiforce.py +2 -2
- webscout/Provider/TTI/imgninza.py +136 -0
- webscout/Provider/Youchat.py +4 -5
- webscout/Provider/__init__.py +13 -6
- webscout/Provider/ai4chat.py +3 -2
- webscout/Provider/aimathgpt.py +193 -0
- webscout/Provider/bagoodex.py +145 -0
- webscout/Provider/bixin.py +3 -3
- webscout/Provider/cleeai.py +3 -3
- webscout/Provider/elmo.py +2 -5
- webscout/Provider/felo_search.py +1 -1
- webscout/Provider/gaurish.py +168 -0
- webscout/Provider/geminiprorealtime.py +160 -0
- webscout/Provider/julius.py +10 -40
- webscout/Provider/llamatutor.py +2 -2
- webscout/Provider/prefind.py +3 -3
- webscout/Provider/promptrefine.py +3 -3
- webscout/Provider/turboseek.py +1 -1
- webscout/Provider/twitterclone.py +25 -41
- webscout/Provider/upstage.py +3 -3
- webscout/Provider/x0gpt.py +6 -6
- webscout/exceptions.py +5 -1
- webscout/utils.py +3 -0
- webscout/version.py +1 -1
- webscout/webscout_search.py +154 -123
- {webscout-5.9.dist-info → webscout-6.1.dist-info}/METADATA +132 -157
- {webscout-5.9.dist-info → webscout-6.1.dist-info}/RECORD +55 -49
- {webscout-5.9.dist-info → webscout-6.1.dist-info}/WHEEL +1 -1
- webscout/Local/rawdog.py +0 -946
- webscout/Provider/Poe.py +0 -208
- {webscout-5.9.dist-info → webscout-6.1.dist-info}/LICENSE.md +0 -0
- {webscout-5.9.dist-info → webscout-6.1.dist-info}/entry_points.txt +0 -0
- {webscout-5.9.dist-info → webscout-6.1.dist-info}/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: webscout
|
|
3
|
-
Version:
|
|
3
|
+
Version: 6.1
|
|
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
|
|
@@ -28,15 +28,14 @@ Requires-Dist: docstring-inheritance
|
|
|
28
28
|
Requires-Dist: click
|
|
29
29
|
Requires-Dist: curl-cffi
|
|
30
30
|
Requires-Dist: nest-asyncio
|
|
31
|
-
Requires-Dist: g4f
|
|
31
|
+
Requires-Dist: g4f>=0.2.2.3
|
|
32
32
|
Requires-Dist: g4f[webdriver]
|
|
33
33
|
Requires-Dist: rich
|
|
34
34
|
Requires-Dist: beautifulsoup4
|
|
35
35
|
Requires-Dist: markdownify
|
|
36
|
-
Requires-Dist: pydantic
|
|
37
36
|
Requires-Dist: requests
|
|
38
37
|
Requires-Dist: google-generativeai
|
|
39
|
-
Requires-Dist: lxml
|
|
38
|
+
Requires-Dist: lxml>=5.2.2
|
|
40
39
|
Requires-Dist: termcolor
|
|
41
40
|
Requires-Dist: orjson
|
|
42
41
|
Requires-Dist: PyYAML
|
|
@@ -44,8 +43,6 @@ Requires-Dist: appdirs
|
|
|
44
43
|
Requires-Dist: tls-client
|
|
45
44
|
Requires-Dist: clipman
|
|
46
45
|
Requires-Dist: playsound
|
|
47
|
-
Requires-Dist: poe-api-wrapper
|
|
48
|
-
Requires-Dist: pyreqwest-impersonate
|
|
49
46
|
Requires-Dist: ollama
|
|
50
47
|
Requires-Dist: pyfiglet
|
|
51
48
|
Requires-Dist: pillow
|
|
@@ -56,14 +53,22 @@ Requires-Dist: emoji
|
|
|
56
53
|
Requires-Dist: openai
|
|
57
54
|
Requires-Dist: prompt-toolkit
|
|
58
55
|
Requires-Dist: fake-useragent
|
|
56
|
+
Requires-Dist: primp
|
|
57
|
+
Requires-Dist: pyreqwest-impersonate
|
|
58
|
+
Requires-Dist: lxml-html-clean
|
|
59
|
+
Requires-Dist: gradio-client
|
|
60
|
+
Requires-Dist: psutil
|
|
61
|
+
Requires-Dist: colorlog
|
|
62
|
+
Requires-Dist: yaspin
|
|
59
63
|
Provides-Extra: dev
|
|
60
|
-
Requires-Dist: ruff
|
|
61
|
-
Requires-Dist: pytest
|
|
64
|
+
Requires-Dist: ruff>=0.1.6; extra == "dev"
|
|
65
|
+
Requires-Dist: pytest>=7.4.2; extra == "dev"
|
|
62
66
|
Provides-Extra: local
|
|
63
|
-
Requires-Dist: llama-cpp-python
|
|
64
|
-
Requires-Dist: colorama
|
|
65
|
-
Requires-Dist: numpy
|
|
66
|
-
Requires-Dist: huggingface-hub[cli]
|
|
67
|
+
Requires-Dist: llama-cpp-python; extra == "local"
|
|
68
|
+
Requires-Dist: colorama; extra == "local"
|
|
69
|
+
Requires-Dist: numpy; extra == "local"
|
|
70
|
+
Requires-Dist: huggingface-hub[cli]; extra == "local"
|
|
71
|
+
Requires-Dist: unicorn; extra == "local"
|
|
67
72
|
|
|
68
73
|
<div align="center">
|
|
69
74
|
<!-- Replace `#` with your actual links -->
|
|
@@ -108,7 +113,7 @@ Requires-Dist: huggingface-hub[cli] ; extra == 'local'
|
|
|
108
113
|
* **Text-to-Speech (TTS):** Convert text into natural-sounding speech using various TTS providers.
|
|
109
114
|
* **WebAI:** Experience the power of terminal-based GPT and an open interpreter for code execution and more.
|
|
110
115
|
* **Offline LLMs:** Utilize powerful language models offline with GGUF support.
|
|
111
|
-
* **Extensive Provider Ecosystem:** Explore a vast collection of providers, including
|
|
116
|
+
* **Extensive Provider Ecosystem:** Explore a vast collection of providers, including BasedGPT, DeepSeek, and many others.
|
|
112
117
|
* **Local LLM Execution:** Run GGUF models locally with minimal configuration.
|
|
113
118
|
* **Rawdog Scripting:** Execute Python scripts directly within your terminal using the `rawdog` feature.
|
|
114
119
|
* **GGUF Conversion & Quantization:** Convert and quantize Hugging Face models to GGUF format.
|
|
@@ -871,7 +876,7 @@ print(result)
|
|
|
871
876
|
___
|
|
872
877
|
</details>
|
|
873
878
|
|
|
874
|
-
### 🖼️ Text to Images - DeepInfraImager, PollinationsAI, BlackboxAIImager,
|
|
879
|
+
### 🖼️ Text to Images - DeepInfraImager, PollinationsAI, BlackboxAIImager, AiForceimager, NexraImager, HFimager, ArtbitImager, NinjaImager, WebSimAI, AmigoImager
|
|
875
880
|
|
|
876
881
|
**Every TTI provider has the same usage code, you just need to change the import.**
|
|
877
882
|
|
|
@@ -900,7 +905,7 @@ voicepods.play_audio(audio_file)
|
|
|
900
905
|
|
|
901
906
|
```python
|
|
902
907
|
from webscout import WEBS as w
|
|
903
|
-
R = w().chat("Who are you", model='gpt-4o-mini') #
|
|
908
|
+
R = w().chat("Who are you", model='gpt-4o-mini') # mixtral-8x7b, llama-3.1-70b, claude-3-haiku, gpt-4o-mini
|
|
904
909
|
print(R)
|
|
905
910
|
```
|
|
906
911
|
|
|
@@ -1128,10 +1133,6 @@ response_str = a.chat(prompt)
|
|
|
1128
1133
|
print(response_str)
|
|
1129
1134
|
```
|
|
1130
1135
|
|
|
1131
|
-
### `Poe` - Chat with Poe
|
|
1132
|
-
|
|
1133
|
-
Usage code is similar to other providers.
|
|
1134
|
-
|
|
1135
1136
|
### `BasedGPT` - Chat with GPT
|
|
1136
1137
|
|
|
1137
1138
|
```python
|
|
@@ -1210,27 +1211,6 @@ message = ai.get_message(response)
|
|
|
1210
1211
|
print(message)
|
|
1211
1212
|
```
|
|
1212
1213
|
|
|
1213
|
-
### `Deepinfra` - VLM
|
|
1214
|
-
|
|
1215
|
-
```python
|
|
1216
|
-
from webscout.Provider import VLM
|
|
1217
|
-
|
|
1218
|
-
# Load your image
|
|
1219
|
-
image_path = r"C:\Users\koula\OneDrive\Desktop\Webscout\photo_2024-03-25_19-23-40.jpg"
|
|
1220
|
-
|
|
1221
|
-
vlm_instance = VLM(model="llava-hf/llava-1.5-7b-hf", is_conversation=True, max_tokens=600, timeout=30, system_prompt="You are a Helpful AI.")
|
|
1222
|
-
image_base64 = vlm_instance.encode_image_to_base64(image_path)
|
|
1223
|
-
|
|
1224
|
-
prompt = {
|
|
1225
|
-
"content": "What is in this image?",
|
|
1226
|
-
"image": image_base64
|
|
1227
|
-
}
|
|
1228
|
-
|
|
1229
|
-
# Generate a response
|
|
1230
|
-
response = vlm_instance.chat(prompt)
|
|
1231
|
-
print(response)
|
|
1232
|
-
|
|
1233
|
-
```
|
|
1234
1214
|
|
|
1235
1215
|
### `GROQ`
|
|
1236
1216
|
|
|
@@ -1344,117 +1324,120 @@ print(a.chat("HelpingAI-9B"))
|
|
|
1344
1324
|
```python
|
|
1345
1325
|
import json
|
|
1346
1326
|
import logging
|
|
1347
|
-
from webscout import
|
|
1327
|
+
from webscout import Julius, WEBS
|
|
1348
1328
|
from webscout.Agents.functioncall import FunctionCallingAgent
|
|
1329
|
+
from rich import print
|
|
1349
1330
|
|
|
1350
|
-
|
|
1351
|
-
|
|
1352
|
-
|
|
1353
|
-
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1358
|
-
|
|
1359
|
-
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1331
|
+
class FunctionExecutor:
|
|
1332
|
+
def __init__(self, llama):
|
|
1333
|
+
self.llama = llama
|
|
1334
|
+
|
|
1335
|
+
def execute_web_search(self, arguments):
|
|
1336
|
+
query = arguments.get("query")
|
|
1337
|
+
if not query:
|
|
1338
|
+
return "Please provide a search query."
|
|
1339
|
+
with WEBS() as webs:
|
|
1340
|
+
search_results = webs.text(query, max_results=5)
|
|
1341
|
+
prompt = (
|
|
1342
|
+
f"Based on the following search results:\n\n{search_results}\n\n"
|
|
1343
|
+
f"Question: {query}\n\n"
|
|
1344
|
+
"Please provide a comprehensive answer to the question based on the search results above. "
|
|
1345
|
+
"Include relevant webpage URLs in your answer when appropriate. "
|
|
1346
|
+
"If the search results don't contain relevant information, please state that and provide the best answer you can based on your general knowledge."
|
|
1347
|
+
)
|
|
1348
|
+
return self.llama.chat(prompt)
|
|
1349
|
+
|
|
1350
|
+
def execute_general_ai(self, arguments):
|
|
1351
|
+
question = arguments.get("question")
|
|
1352
|
+
if not question:
|
|
1353
|
+
return "Please provide a question."
|
|
1354
|
+
return self.llama.chat(question)
|
|
1355
|
+
|
|
1356
|
+
def execute_UserDetail(self, arguments):
|
|
1357
|
+
name = arguments.get("name")
|
|
1358
|
+
age = arguments.get("age")
|
|
1359
|
+
return f"User details - Name: {name}, Age: {age}"
|
|
1360
|
+
|
|
1361
|
+
def main():
|
|
1362
|
+
tools = [
|
|
1363
|
+
{
|
|
1364
|
+
"type": "function",
|
|
1365
|
+
"function": {
|
|
1366
|
+
"name": "UserDetail",
|
|
1367
|
+
"parameters": {
|
|
1368
|
+
"type": "object",
|
|
1369
|
+
"properties": {
|
|
1370
|
+
"name": {"title": "Name", "type": "string"},
|
|
1371
|
+
"age": {"title": "Age", "type": "integer"}
|
|
1363
1372
|
},
|
|
1364
|
-
"
|
|
1365
|
-
|
|
1366
|
-
"type": "integer"
|
|
1367
|
-
}
|
|
1368
|
-
},
|
|
1369
|
-
"required": ["name", "age"]
|
|
1373
|
+
"required": ["name", "age"]
|
|
1374
|
+
}
|
|
1370
1375
|
}
|
|
1371
|
-
}
|
|
1372
|
-
|
|
1373
|
-
|
|
1374
|
-
|
|
1375
|
-
|
|
1376
|
-
|
|
1377
|
-
|
|
1378
|
-
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
|
|
1382
|
-
|
|
1383
|
-
|
|
1384
|
-
}
|
|
1385
|
-
|
|
1386
|
-
|
|
1376
|
+
},
|
|
1377
|
+
{
|
|
1378
|
+
"type": "function",
|
|
1379
|
+
"function": {
|
|
1380
|
+
"name": "web_search",
|
|
1381
|
+
"description": "Search the web for information using Google Search.",
|
|
1382
|
+
"parameters": {
|
|
1383
|
+
"type": "object",
|
|
1384
|
+
"properties": {
|
|
1385
|
+
"query": {
|
|
1386
|
+
"type": "string",
|
|
1387
|
+
"description": "The search query to be executed."
|
|
1388
|
+
}
|
|
1389
|
+
},
|
|
1390
|
+
"required": ["query"]
|
|
1391
|
+
}
|
|
1387
1392
|
}
|
|
1388
|
-
}
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
|
|
1395
|
-
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
}
|
|
1402
|
-
},
|
|
1403
|
-
"required": ["question"]
|
|
1393
|
+
},
|
|
1394
|
+
{
|
|
1395
|
+
"type": "function",
|
|
1396
|
+
"function": {
|
|
1397
|
+
"name": "general_ai",
|
|
1398
|
+
"description": "Use general AI knowledge to answer the question",
|
|
1399
|
+
"parameters": {
|
|
1400
|
+
"type": "object",
|
|
1401
|
+
"properties": {
|
|
1402
|
+
"question": {"type": "string", "description": "The question to answer"}
|
|
1403
|
+
},
|
|
1404
|
+
"required": ["question"]
|
|
1405
|
+
}
|
|
1404
1406
|
}
|
|
1405
1407
|
}
|
|
1406
|
-
|
|
1407
|
-
]
|
|
1408
|
+
]
|
|
1408
1409
|
|
|
1409
|
-
|
|
1410
|
-
|
|
1411
|
-
|
|
1412
|
-
from rich import print
|
|
1413
|
-
# Input message from the user
|
|
1414
|
-
user = input(">>> ")
|
|
1415
|
-
message = user
|
|
1416
|
-
function_call_data = agent.function_call_handler(message)
|
|
1417
|
-
print(f"Function Call Data: {function_call_data}")
|
|
1418
|
-
|
|
1419
|
-
# Check for errors in the function call data
|
|
1420
|
-
if "error" not in function_call_data:
|
|
1421
|
-
function_name = function_call_data.get("tool_name") # Use 'tool_name' instead of 'name'
|
|
1422
|
-
if function_name == "web_search":
|
|
1423
|
-
arguments = function_call_data.get("tool_input", {}) # Get tool input arguments
|
|
1424
|
-
query = arguments.get("query")
|
|
1425
|
-
if query:
|
|
1426
|
-
with WEBS() as webs:
|
|
1427
|
-
search_results = webs.text(query, max_results=5)
|
|
1428
|
-
prompt = (
|
|
1429
|
-
f"Based on the following search results:\n\n{search_results}\n\n"
|
|
1430
|
-
f"Question: {user}\n\n"
|
|
1431
|
-
"Please provide a comprehensive answer to the question based on the search results above. "
|
|
1432
|
-
"Include relevant webpage URLs in your answer when appropriate. "
|
|
1433
|
-
"If the search results don't contain relevant information, please state that and provide the best answer you can based on your general knowledge."
|
|
1434
|
-
)
|
|
1435
|
-
response = llama.chat(prompt)
|
|
1436
|
-
for c in response:
|
|
1437
|
-
print(c, end="", flush=True)
|
|
1410
|
+
agent = FunctionCallingAgent(tools=tools)
|
|
1411
|
+
llama = Julius()
|
|
1412
|
+
function_executor = FunctionExecutor(llama)
|
|
1438
1413
|
|
|
1414
|
+
user_input = input(">>> ")
|
|
1415
|
+
function_call_data = agent.function_call_handler(user_input)
|
|
1416
|
+
print(f"Function Call Data: {function_call_data}")
|
|
1417
|
+
|
|
1418
|
+
try:
|
|
1419
|
+
if "error" not in function_call_data:
|
|
1420
|
+
function_name = function_call_data.get("tool_name")
|
|
1421
|
+
arguments = function_call_data.get("tool_input", {})
|
|
1422
|
+
|
|
1423
|
+
execute_function = getattr(function_executor, f"execute_{function_name}", None)
|
|
1424
|
+
if execute_function:
|
|
1425
|
+
result = execute_function(arguments)
|
|
1426
|
+
print("Function Execution Result:")
|
|
1427
|
+
for c in result:
|
|
1428
|
+
print(c, end="", flush=True)
|
|
1429
|
+
else:
|
|
1430
|
+
print(f"Unknown function: {function_name}")
|
|
1439
1431
|
else:
|
|
1440
|
-
print("
|
|
1441
|
-
|
|
1442
|
-
|
|
1443
|
-
|
|
1444
|
-
|
|
1445
|
-
|
|
1446
|
-
for c in response:
|
|
1447
|
-
print(c, end="", flush=True)
|
|
1448
|
-
else:
|
|
1449
|
-
print("Please provide a question.")
|
|
1450
|
-
else:
|
|
1451
|
-
result = agent.execute_function(function_call_data)
|
|
1452
|
-
print(f"Function Execution Result: {result}")
|
|
1453
|
-
else:
|
|
1454
|
-
print(f"Error: {function_call_data['error']}")
|
|
1432
|
+
print(f"Error: {function_call_data['error']}")
|
|
1433
|
+
except Exception as e:
|
|
1434
|
+
print(f"An error occurred: {str(e)}")
|
|
1435
|
+
|
|
1436
|
+
if __name__ == "__main__":
|
|
1437
|
+
main()
|
|
1455
1438
|
```
|
|
1456
1439
|
|
|
1457
|
-
### 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
|
|
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
|
|
1458
1441
|
|
|
1459
1442
|
Code is similar to other providers.
|
|
1460
1443
|
|
|
@@ -1493,24 +1476,16 @@ Webscout can now run GGUF models locally. You can download and run your favorite
|
|
|
1493
1476
|
**Example:**
|
|
1494
1477
|
|
|
1495
1478
|
```python
|
|
1496
|
-
from webscout.Local
|
|
1497
|
-
|
|
1498
|
-
|
|
1499
|
-
|
|
1500
|
-
|
|
1501
|
-
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
# 2. Load the model
|
|
1507
|
-
model = Model(model_path, n_gpu_layers=4)
|
|
1508
|
-
|
|
1509
|
-
# 3. Create a Thread for conversation
|
|
1510
|
-
thread = Thread(model, formats.phi3)
|
|
1511
|
-
|
|
1512
|
-
# 4. Start interacting with the model
|
|
1513
|
-
thread.interact()
|
|
1479
|
+
from webscout.Local import *
|
|
1480
|
+
model_path = download_model("Qwen/Qwen2.5-0.5B-Instruct-GGUF", "qwen2.5-0.5b-instruct-q2_k.gguf", token=None)
|
|
1481
|
+
model = Model(model_path, n_gpu_layers=0, context_length=2048)
|
|
1482
|
+
thread = Thread(model, format=chatml)
|
|
1483
|
+
# print(thread.send("hi")) #send a single msg to ai
|
|
1484
|
+
|
|
1485
|
+
# thread.interact() # interact with the model in terminal
|
|
1486
|
+
# start webui
|
|
1487
|
+
# webui = WebUI(thread)
|
|
1488
|
+
# webui.start(host="0.0.0.0", port=8080, ssl=True) #Use ssl=True and make cert and key for https
|
|
1514
1489
|
```
|
|
1515
1490
|
|
|
1516
1491
|
## 🐶 Local-rawdog
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
webscout/AIauto.py,sha256=C92j0QtSmxG978fELezsgzxjq75VjQ5ld6Ybp4go1SU,11765
|
|
2
2
|
webscout/AIbase.py,sha256=vv0N8sDYaZKkKD9fkLpK1CA51ksZl0_PQ82tB431c-4,9215
|
|
3
3
|
webscout/AIutel.py,sha256=JLA3wqfSZJC_DMmI5Kjj8AxvQTMvs3F9MgqSn3koiZ4,38580
|
|
4
|
-
webscout/Bard.py,sha256=
|
|
4
|
+
webscout/Bard.py,sha256=CmDhKC67Ki2xA8Rkme6EC-gLmq3PhAAAGd5tcpJ0KJo,13234
|
|
5
5
|
webscout/Bing_search.py,sha256=8pW3ZxFDfVsrtayEoAsAAoXoOCAGv2Jk_-HvOBNfCV4,6228
|
|
6
6
|
webscout/DWEBS.py,sha256=xB3L_u47vu9KZCFNUb_H6WX5OLeL068Er9t9Mbss9YU,7895
|
|
7
7
|
webscout/LLM.py,sha256=LbGCZdJf8A5dwfoGS4tyy39tAh5BDdhMZP0ScKaaQfU,4184
|
|
@@ -9,110 +9,116 @@ webscout/YTdownloader.py,sha256=qVROwMmRpHy95NsbzZvpidEKuqMwFTCi7bW4jJgbl44,3915
|
|
|
9
9
|
webscout/__init__.py,sha256=scVR3GK70Ds0x5fDB_PxbZUH3cUBG4Pgw1Tac5bvKro,1328
|
|
10
10
|
webscout/__main__.py,sha256=ZtTRgsRjUi2JOvYFLF1ZCh55Sdoz94I-BS-TlJC7WDU,126
|
|
11
11
|
webscout/cli.py,sha256=RlBKeS9CSIsiBMqlzxevWtKjbY9htkZvA7J0bM_hHE8,14999
|
|
12
|
-
webscout/exceptions.py,sha256=
|
|
12
|
+
webscout/exceptions.py,sha256=b9P7Sp3CEFigHAeTQli2DPLBZ-3sh8L-UWUd2-2RcVY,793
|
|
13
13
|
webscout/g4f.py,sha256=NNcnlOtIWV9R93UsBN4jBGBEJ9sJ-Np1WbgjkGVDcYc,24487
|
|
14
14
|
webscout/models.py,sha256=5iQIdtedT18YuTZ3npoG7kLMwcrKwhQ7928dl_7qZW0,692
|
|
15
15
|
webscout/requestsHTMLfix.py,sha256=LZ9uynkwpGqVS2uFB5bMjdh6gLjSMerHPEqzVCvICIs,27961
|
|
16
16
|
webscout/tempid.py,sha256=2a_YDFUCZy3TJVfqEPSLyMvHBjDk9gp5FiFCvJwsOaw,7984
|
|
17
17
|
webscout/transcriber.py,sha256=kRymTd69zCjXdduCf7Gabt93Kz1l5ubsCwfwqs-pHl8,22334
|
|
18
|
-
webscout/utils.py,sha256=
|
|
19
|
-
webscout/version.py,sha256=
|
|
18
|
+
webscout/utils.py,sha256=LVW7U0XcGYqigqxV6D5YXeGMrc_mt7PnNG_YnKf9bBM,3059
|
|
19
|
+
webscout/version.py,sha256=2nDWOp3vhJrfUeqqJJsf8o0xLdjDq_72L5_WdV-5CWY,44
|
|
20
20
|
webscout/webai.py,sha256=MzDWMFv8oI3wmeL3SwvxUrZdBRyh9MMn97kNTvgL5T4,87744
|
|
21
|
-
webscout/webscout_search.py,sha256=
|
|
21
|
+
webscout/webscout_search.py,sha256=HHdO9XLToC_9nIMM_SaTOKKfzdhrKjb7o8Zi3ZD1O7Y,44744
|
|
22
22
|
webscout/webscout_search_async.py,sha256=2-RCa9Deahhw3Bti78kXfVaX8y3Aygy4L7HeCaITk9M,14519
|
|
23
23
|
webscout/websx_search.py,sha256=5hfkkmGFhyQzojUpvMzIOJ3DBZIBNS90UReaacsfu6s,521
|
|
24
|
-
webscout/Agents/Onlinesearcher.py,sha256=
|
|
24
|
+
webscout/Agents/Onlinesearcher.py,sha256=dzb08Bz9QMMeP1mQTxIK2mkpwthhNJJND7TIRmM3dwA,7942
|
|
25
25
|
webscout/Agents/__init__.py,sha256=qJXx2Q1yAupE0FJabXvs49Nxwm3IsREyuMWp8Q1VYiE,60
|
|
26
|
-
webscout/Agents/functioncall.py,sha256=
|
|
26
|
+
webscout/Agents/functioncall.py,sha256=n9KOv0mWcCew5WI_xbI-zGe8hgTj-zNb73bAkZxrJfA,7609
|
|
27
27
|
webscout/Extra/__init__.py,sha256=GG1qUwS-HspT4TeeAIT4qFpM8PaO1ZdQhpelctaM7Rs,99
|
|
28
28
|
webscout/Extra/autollama.py,sha256=qM8alxlWzg10BGIYKZBUtIEAXrkvEOWBwSxdPp3zq9I,6226
|
|
29
29
|
webscout/Extra/gguf.py,sha256=RvSp7xuaD6epAA9iAzthUnAQ3HA5N-svMyKUadAVnw8,7009
|
|
30
30
|
webscout/Extra/weather.py,sha256=wdSrQxZRpbNfyaux0BeLdaDWyde5KwxZjSUM13820X0,2460
|
|
31
31
|
webscout/Extra/weather_ascii.py,sha256=Aed-_EUzvTEjBXbOpNRxkJBLa6fXsclknXP06HnQD18,808
|
|
32
|
-
webscout/Local/__init__.py,sha256=
|
|
32
|
+
webscout/Local/__init__.py,sha256=Mte7RYlelBND2yof_HJ3MMZYBVeTISNFU2-LiFKSbU4,228
|
|
33
33
|
webscout/Local/_version.py,sha256=jk6j7Rb0VWezDG1ZFhgYJpZiyL5rCivaiA86_jJecmk,139
|
|
34
|
-
webscout/Local/formats.py,sha256=
|
|
35
|
-
webscout/Local/model.py,sha256=
|
|
36
|
-
webscout/Local/
|
|
37
|
-
webscout/Local/
|
|
38
|
-
webscout/Local/
|
|
39
|
-
webscout/Local/utils.py,sha256=
|
|
34
|
+
webscout/Local/formats.py,sha256=aSyTDn4-K6IvoVEMo0MSMxFueY2gUH2j36da48krQMg,26573
|
|
35
|
+
webscout/Local/model.py,sha256=49k61kfzGhBbA38ul2yqdrmFd6YPOipJ37vCXOWIxaM,50987
|
|
36
|
+
webscout/Local/samplers.py,sha256=6khEmMiMqIRO-qssjv8PEVomNG2yoLhDM6Wa9YBRbuI,6769
|
|
37
|
+
webscout/Local/thread.py,sha256=ctnoJtkOpKbpdlqCjsnyM2sI-3_AKg9PzNwS3QAIifQ,23603
|
|
38
|
+
webscout/Local/ui.py,sha256=FhqBcC7SVHwRfvrnTduoa7gpQNWYzrSc7OGm89ErNPY,15064
|
|
39
|
+
webscout/Local/utils.py,sha256=SpSs8tGUClnrSVNr7hp9NoaT1bl8V28c0vZ9m6R5d0k,12417
|
|
40
40
|
webscout/Provider/AI21.py,sha256=JBh-xnspxTZNMcl-Gd0Cgseqht9gTM64TUv9I4Imc9k,6218
|
|
41
|
-
webscout/Provider/Amigo.py,sha256=
|
|
41
|
+
webscout/Provider/Amigo.py,sha256=rGzprs37Bdbg-wj2clan1YYjfjyCWiZxDv25lpjk16U,11613
|
|
42
42
|
webscout/Provider/Andi.py,sha256=mKhrnN_TR3rVEBy-oZosEcujF83hISiFeBVM1mHYz2k,10107
|
|
43
43
|
webscout/Provider/BasedGPT.py,sha256=u1s72bQ33iuBqf5u7SWdez8_Eu7MTCM_iZoEW91t9CI,8309
|
|
44
44
|
webscout/Provider/Bing.py,sha256=zxIzq7dlqaLskx9LsYppbMJuwfGtYid3Uh0gIhZ0hps,9001
|
|
45
45
|
webscout/Provider/Blackboxai.py,sha256=ioEhw03eiM65tPvgyZKOCGFzqOT8la59W7HydNGILIw,16815
|
|
46
46
|
webscout/Provider/ChatGPTES.py,sha256=t_Qjn1ShNX0uYp5dJzv6Y7DPQM8HUTgvcBauhFz0-Io,8815
|
|
47
|
-
webscout/Provider/
|
|
48
|
-
webscout/Provider/
|
|
47
|
+
webscout/Provider/ChatHub.py,sha256=lM82-FH5fMQcNmKAaQUGfwwX2kMaBZtkCdMALMYYa6w,7343
|
|
48
|
+
webscout/Provider/Chatify.py,sha256=QYgZAEmhLkEnR7oyr-qUs6OSHoNJm2BgMr41f84Ntbg,6370
|
|
49
|
+
webscout/Provider/Cloudflare.py,sha256=KZ2aZj-K5se_Xn8GPozJ3xRx2lJhf36uIu0Tyx-jH54,10801
|
|
49
50
|
webscout/Provider/Cohere.py,sha256=oL9kAv--RSkEQxwkPTq1Wi57Wkgg0WNvL82CpTj22YY,8264
|
|
50
|
-
webscout/Provider/DARKAI.py,sha256=
|
|
51
|
-
webscout/Provider/Deepinfra.py,sha256=
|
|
52
|
-
webscout/Provider/Deepseek.py,sha256=
|
|
53
|
-
webscout/Provider/DiscordRocks.py,sha256=
|
|
51
|
+
webscout/Provider/DARKAI.py,sha256=bogR9SikV0MuYBkyWWvbqV2oeJVSV5oiMrpwiG0HBcw,9061
|
|
52
|
+
webscout/Provider/Deepinfra.py,sha256=djm8LSDj6aummNSym4HrJHZD2CCVJ_er1oxiFLiq1N4,6389
|
|
53
|
+
webscout/Provider/Deepseek.py,sha256=B3ph24Xmv__o3eyyUonFsVQgouO0i4ydIqp5oTe5aXc,9113
|
|
54
|
+
webscout/Provider/DiscordRocks.py,sha256=fRkVBCyDMZf0SoaNPK7KXAsh8mQj0JWDb7ifYpL9PQQ,11372
|
|
54
55
|
webscout/Provider/EDITEE.py,sha256=cGMTQiMROo7ohSBTOzs2vZneUs1Usjh_7ZFQ61JtD-k,7734
|
|
55
56
|
webscout/Provider/Farfalle.py,sha256=eVmSB4Dq6P2epo8dd6CyCtyxvOMFwvk6f0Ikb9nZ2d0,9017
|
|
56
|
-
webscout/Provider/Free2GPT.py,sha256=
|
|
57
|
+
webscout/Provider/Free2GPT.py,sha256=Lf8dd9iacry_GRr6CT86Cjcp-oNzLyw1O_TWIPDFDxk,9037
|
|
57
58
|
webscout/Provider/GPTWeb.py,sha256=egVGQ8cptr4wlCfrCNA2DM0oXYqhRcje9zxYK5txb2s,7429
|
|
58
59
|
webscout/Provider/Gemini.py,sha256=Vg2MLqQ_qxHkcN7Zikife1dyVK-y94ik8y6MAu-VzUI,7801
|
|
59
60
|
webscout/Provider/Groq.py,sha256=iqyewnxWwN7fMG-dqAR_SyUqImfyZS880lO5iaXso9c,28636
|
|
60
61
|
webscout/Provider/Koboldai.py,sha256=gpRgyDe4OQWwNqT7MWnNrJx4dnFmCW23KUx0Ezjgchk,15185
|
|
61
62
|
webscout/Provider/Llama.py,sha256=N01p3ZVD1HgRnNNxhjRhBVD4m_qiextdyF1KDfJlqbE,7703
|
|
62
63
|
webscout/Provider/Llama3.py,sha256=9jXo8k4ReFGkF01InzaBgUCKUJ0O5Zix3A0pHWRGtJU,7617
|
|
63
|
-
webscout/Provider/
|
|
64
|
+
webscout/Provider/NinjaChat.py,sha256=hxffMI9VShu91raY4k7eq9JtU0ReNHoPFVoxc0yq17M,8633
|
|
65
|
+
webscout/Provider/OLLAMA.py,sha256=NO23OqRcVj0RhU5bnd4y21m_Yfh6JYxc3azxHgzKvmg,7017
|
|
64
66
|
webscout/Provider/Openai.py,sha256=32uxZmZOovzshMQmqDcJ39If7N_UW4B3EeYmaxP_GwE,19983
|
|
65
67
|
webscout/Provider/PI.py,sha256=IodVvGR_RIZpGJ0ypFF4U6NBMZAZ5O1BlRFMelot8so,8364
|
|
66
68
|
webscout/Provider/Perplexity.py,sha256=vcTjwFPi2WC-ck91V3QE_EtmCwFcWaQHku4aAzMoPPM,21461
|
|
67
69
|
webscout/Provider/Phind.py,sha256=NA_b3B4h-kutX6wdoEg4THPfZggl2UeXPbramzZ6oiU,19297
|
|
68
70
|
webscout/Provider/PizzaGPT.py,sha256=tEuEJAGbv-mTd479i3EgaqHd4NwgkrmMW0fpSsGm_N0,7207
|
|
69
|
-
webscout/Provider/
|
|
70
|
-
webscout/Provider/RUBIKSAI.py,sha256=uJlJfnX6kDU2mXhmmRZIn3U_y_bSntwmPuXmXH66W_8,8484
|
|
71
|
+
webscout/Provider/RUBIKSAI.py,sha256=fHCOAFWGXIESA05Bmuqtx6ZChnWomHOMwndfTLv1Hg8,8517
|
|
71
72
|
webscout/Provider/Reka.py,sha256=RZG1YZ5rd7WWmOTGoM_2IpEAKn1MzemHWYad4US4Q8s,8258
|
|
72
73
|
webscout/Provider/TeachAnything.py,sha256=0pQfktjnzM_7UElYVxWTIiHU2WvgNs57CxEuu89F5aw,6776
|
|
73
|
-
webscout/Provider/Youchat.py,sha256=
|
|
74
|
-
webscout/Provider/__init__.py,sha256=
|
|
75
|
-
webscout/Provider/ai4chat.py,sha256=
|
|
74
|
+
webscout/Provider/Youchat.py,sha256=G6I4TqjZuX3refFF3SkOgl_YXY57hjsMg_wRjPgqWIE,9014
|
|
75
|
+
webscout/Provider/__init__.py,sha256=BhRT9si6wgPvwxm-yTBG9hR3mFudHwVpTm4zzT_-6No,2939
|
|
76
|
+
webscout/Provider/ai4chat.py,sha256=av96iS4QPt9IzhcswowmDY2F8IUSLl1YVHZ4bAbfO-s,8140
|
|
76
77
|
webscout/Provider/aigames.py,sha256=vGiGYNLvVBfwwsBSWwDKZbvJsFy8SYsFWRKqx7U7ALY,8083
|
|
77
|
-
webscout/Provider/
|
|
78
|
+
webscout/Provider/aimathgpt.py,sha256=BdXNxEHQP11p6m0wl2Q-uben46A6lMKOg89utV1S7aI,7320
|
|
79
|
+
webscout/Provider/bagoodex.py,sha256=OdYIyvypX-Vkok9zAr6F5NwFQx_z0bKhiw8U4tTFw5o,5023
|
|
80
|
+
webscout/Provider/bixin.py,sha256=tBelpS34RYFwXwe2XSnlnlskEw6o2sPOFWoN-MJN6hE,10577
|
|
78
81
|
webscout/Provider/cerebras.py,sha256=N9Z7wY9pQRhh7chMSDirgHd1GV8Jwjeb3RmYB1pcww4,7302
|
|
79
|
-
webscout/Provider/cleeai.py,sha256=
|
|
80
|
-
webscout/Provider/elmo.py,sha256=
|
|
81
|
-
webscout/Provider/felo_search.py,sha256=
|
|
82
|
+
webscout/Provider/cleeai.py,sha256=NCivTCZU_BU3umuF-rHweNhdlnJE9Hwsd5A3611bFTM,8050
|
|
83
|
+
webscout/Provider/elmo.py,sha256=6C-j8xLfgyMjmv8jdjey0BPzl_UwEFpMEbBtYobfPd0,9387
|
|
84
|
+
webscout/Provider/felo_search.py,sha256=cGuSVTwLiCleUWs4OEQhEYUjL2D8z87Km47cRogI7aQ,6879
|
|
85
|
+
webscout/Provider/gaurish.py,sha256=OUiMlTlrPqRqokckR2WyxDljWLN-DhvsoMhi3LKijAo,6244
|
|
82
86
|
webscout/Provider/geminiapi.py,sha256=sGg7AncRShMacLTBwn39CzG4zsRz9JSBwVO4LlUdt6g,7869
|
|
87
|
+
webscout/Provider/geminiprorealtime.py,sha256=OrpUtmmv__7bgoLfyY3IUosTWW_3MDw5eUP-iMKLYr0,5867
|
|
83
88
|
webscout/Provider/genspark.py,sha256=h1dTcs50EsDH2-aioYKcPggh28kaJnwHOM7gG4s0FTY,8727
|
|
84
|
-
webscout/Provider/julius.py,sha256=
|
|
89
|
+
webscout/Provider/julius.py,sha256=1JANcowWAn2zI7wCpAJWg5KW3cQNcMTfnWXwk9oblNM,8563
|
|
85
90
|
webscout/Provider/koala.py,sha256=qBtqjTvhoMQdDE8qUH0XuNa_x2bic77d7CUjIVboask,10106
|
|
86
91
|
webscout/Provider/learnfastai.py,sha256=j2hYwCVNpWZM4rN_4my9R0IfStNoAsIXjkvr_CRYcA0,9790
|
|
87
92
|
webscout/Provider/lepton.py,sha256=4RiQ4YNJljX558yhSUqws6pf1Yhf7pWIesa4SRQCry8,7590
|
|
88
|
-
webscout/Provider/llamatutor.py,sha256=
|
|
93
|
+
webscout/Provider/llamatutor.py,sha256=DijA4Y1CVDz-Ks8pACTSb6hnOxdQD2IHw-_ztRqhyPQ,8871
|
|
89
94
|
webscout/Provider/meta.py,sha256=TpoStt2nTUTCYxx4GI3IOQ7gX_Mi36pL7HhtjPvLtZQ,30717
|
|
90
|
-
webscout/Provider/prefind.py,sha256=
|
|
91
|
-
webscout/Provider/promptrefine.py,sha256=
|
|
92
|
-
webscout/Provider/turboseek.py,sha256=
|
|
95
|
+
webscout/Provider/prefind.py,sha256=msw_kXO59Xz-xG5f72O3WIww-HVyUAj-WpByeLiCB1U,9306
|
|
96
|
+
webscout/Provider/promptrefine.py,sha256=_8NEk376wXuB2ws51GGBegmkv-oz4dG7Ll5nHPCdd8c,7460
|
|
97
|
+
webscout/Provider/turboseek.py,sha256=N7Sn9UyMMAfwjz7RUaW8XfihlQO2YTF00YIlDuCFvaY,8571
|
|
93
98
|
webscout/Provider/tutorai.py,sha256=lnuZJ9rN-sYjTXOBTkUuKsjO6LErrBkh-bDhziEGZB8,14743
|
|
94
|
-
webscout/Provider/twitterclone.py,sha256=
|
|
95
|
-
webscout/Provider/upstage.py,sha256=
|
|
96
|
-
webscout/Provider/x0gpt.py,sha256=
|
|
99
|
+
webscout/Provider/twitterclone.py,sha256=xqPcMOIkRLpzs4E1e3vNo_kJt55KfUuYZf_g0cjEePk,9248
|
|
100
|
+
webscout/Provider/upstage.py,sha256=rdH94hIwR98HKfar576WzVmgdB1DU2H8qaChUmJFtPc,9237
|
|
101
|
+
webscout/Provider/x0gpt.py,sha256=Z8U4MQIRfhHpdarHO6_BZ27veXMDEAneguJ7uFSD_HU,6478
|
|
97
102
|
webscout/Provider/xdash.py,sha256=wyn1tBLwe4lo8LBqEFrr0hFDPj84z2p8PONdyzsj5f4,7369
|
|
98
103
|
webscout/Provider/yep.py,sha256=ge7a3cK02G6tbT0_q9glH7ujCx3QlgrqwBuHasQVYfQ,20581
|
|
99
|
-
webscout/Provider/TTI/Nexra.py,sha256=
|
|
104
|
+
webscout/Provider/TTI/Nexra.py,sha256=4-ktIYnyWWLb8KHuyzzHV_docjpBukVwjLTICoindyA,4619
|
|
100
105
|
webscout/Provider/TTI/PollinationsAI.py,sha256=ELMc92hYXzS1uFZtRB-tbFb39C3YqpxnfM8dVcucPE0,5485
|
|
101
106
|
webscout/Provider/TTI/WebSimAI.py,sha256=tbUjvu945M35HOINLLuwvKZB_xUOmHuF69K75KiKDwU,5223
|
|
102
|
-
webscout/Provider/TTI/__init__.py,sha256=
|
|
103
|
-
webscout/Provider/TTI/aiforce.py,sha256=
|
|
107
|
+
webscout/Provider/TTI/__init__.py,sha256=mexrCwXr-JMcA_KbDvAbdKX_4fX-s7vaiK92YnXC-Jk,254
|
|
108
|
+
webscout/Provider/TTI/aiforce.py,sha256=LIt7cZU1W2LBEGk-QyUYO3cvyPjlxODWYF28kQ6xzZI,6263
|
|
104
109
|
webscout/Provider/TTI/amigo.py,sha256=m5X0nlUdROHNalqkBP8A7ZZQlr7XmIWbdd7qEBWsAtw,5830
|
|
105
110
|
webscout/Provider/TTI/artbit.py,sha256=59rclp-Ker6CeIG6w0Kdte0gwgN5OUcDXi-AhbPnTeo,5077
|
|
106
111
|
webscout/Provider/TTI/blackboximage.py,sha256=P3P8lg4-CCcDB1sPhVaP5oB9hqEhiErOTs2IX_Pv4ro,5848
|
|
107
112
|
webscout/Provider/TTI/deepinfra.py,sha256=4x3knEeQnjhan5Y6uogK3dXFVa3r8UjN51n91Wm7Qfg,5975
|
|
108
113
|
webscout/Provider/TTI/huggingface.py,sha256=bowc61na8BR941Ux4_PJh_wiuzGPwnmWp_VCZ5cGacY,6268
|
|
114
|
+
webscout/Provider/TTI/imgninza.py,sha256=87-FIQlf7i0MwxQ5gO5ovbEEDlsjQN2bCvLB4DySHBs,5472
|
|
109
115
|
webscout/Provider/TTS/__init__.py,sha256=uGhNvQUrElyPfxoXs5V9xJpLuIyShe3yKHif5MaERxA,77
|
|
110
116
|
webscout/Provider/TTS/parler.py,sha256=NbS2IGhyZiTNQ3jNG3v1XWyVioHuBdsP0MIvQq7BKOg,3805
|
|
111
117
|
webscout/Provider/TTS/streamElements.py,sha256=aaE55W_bAzvL3-pl7tHs_xU7dSZB5_V7ix-usoe-4aM,7398
|
|
112
118
|
webscout/Provider/TTS/voicepod.py,sha256=wAAnpcpDyej72UjIRhEnEmcoJnUqp1lPCLiiwJMYJic,4343
|
|
113
|
-
webscout-
|
|
114
|
-
webscout-
|
|
115
|
-
webscout-
|
|
116
|
-
webscout-
|
|
117
|
-
webscout-
|
|
118
|
-
webscout-
|
|
119
|
+
webscout-6.1.dist-info/LICENSE.md,sha256=9P0imsudI7MEvZe2pOcg8rKBn6E5FGHQ-riYozZI-Bk,2942
|
|
120
|
+
webscout-6.1.dist-info/METADATA,sha256=2O-psmg3Xk8GQlazW1g2HGLXOyiXOJINg5YkEgH2ZpA,50386
|
|
121
|
+
webscout-6.1.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91
|
|
122
|
+
webscout-6.1.dist-info/entry_points.txt,sha256=Hh4YIIjvkqB9SVxZ2ri4DZUkgEu_WF_5_r_nZDIvfG8,73
|
|
123
|
+
webscout-6.1.dist-info/top_level.txt,sha256=nYIw7OKBQDr_Z33IzZUKidRD3zQEo8jOJYkMVMeN334,9
|
|
124
|
+
webscout-6.1.dist-info/RECORD,,
|