-
-
Notifications
You must be signed in to change notification settings - Fork 520
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[feat] added a versatile and efficient Web Browsing Tool with Asynchronous Surfing #761
Conversation
@@ -0,0 +1,258 @@ | |||
import asyncio | |||
import aiohttp |
Check failure
Code scanning / Pyre
Undefined import Error
@@ -0,0 +1,258 @@ | |||
import asyncio | |||
import aiohttp | |||
from bs4 import BeautifulSoup |
Check failure
Code scanning / Pyre
Undefined import Error
import json | ||
import os | ||
from typing import List, Dict, Optional | ||
from dotenv import load_dotenv |
Check failure
Code scanning / Pyre
Undefined import Error
import os | ||
from typing import List, Dict, Optional | ||
from dotenv import load_dotenv | ||
import google.generativeai as genai |
Check failure
Code scanning / Pyre
Undefined import Error
from typing import List, Dict, Optional | ||
from dotenv import load_dotenv | ||
import google.generativeai as genai | ||
from rich.console import Console |
Check failure
Code scanning / Pyre
Undefined import Error
from dotenv import load_dotenv | ||
import google.generativeai as genai | ||
from rich.console import Console | ||
from rich.progress import Progress, SpinnerColumn, TextColumn, BarColumn, TimeRemainingColumn |
Check failure
Code scanning / Pyre
Undefined import Error
import google.generativeai as genai | ||
from rich.console import Console | ||
from rich.progress import Progress, SpinnerColumn, TextColumn, BarColumn, TimeRemainingColumn | ||
import html2text |
Check failure
Code scanning / Pyre
Undefined import Error
from rich.progress import Progress, SpinnerColumn, TextColumn, BarColumn, TimeRemainingColumn | ||
import html2text | ||
from concurrent.futures import ThreadPoolExecutor, as_completed | ||
from playwright.sync_api import sync_playwright |
Check failure
Code scanning / Pyre
Undefined import Error
from concurrent.futures import ThreadPoolExecutor, as_completed | ||
from playwright.sync_api import sync_playwright | ||
import time | ||
from tenacity import retry, stop_after_attempt, wait_exponential |
Check failure
Code scanning / Pyre
Undefined import Error
@harshalmore31 this goes in swarms-tools, not this library |
This PR introduces a versatile and efficient web browsing tool that supports asynchronous surfing, dynamic content rendering, and real-time progress tracking. The tool is designed to provide users with a seamless and intuitive browsing experience.
Features
aiohttp
for non-blocking web requests.Playwright
to handle modern, JavaScript-heavy websites.BeautifulSoup
for clean content extraction.tenacity
for resilience against transient failures..env
files.Advanced Capabilities
Impact
📚 Documentation preview 📚: https://swarms--761.org.readthedocs.build/en/761/