wcrawler / utils /main.py
harsh-dev's picture
initial push
83fe205
from ddgs import DDGS
def findSearchResults(
query: str,
region: str = "us-en",
safesearch: str = "moderate",
timelimit: str | None = None,
max_results: int | None = 10,
page: int = 1,
backend: str = "auto"
) -> list[dict[str, str]]:
# results = DDGS(query, max_results=max_results)
results = DDGS().text(query, max_results=max_results, region=region, safesearch=safesearch, timelimit=timelimit, page=page, backend=backend)
for i, result in enumerate(results):
print(f"{i+1}: {result['title']} - {result['href']}")
return results
def findImages(
query: str,
region: str = "us-en",
safesearch: str = "moderate",
timelimit: str | None = None,
max_results: int | None = 10,
page: int = 1,
backend: str = "auto",
size: str | None = None,
color: str | None = None,
type_image: str | None = None,
layout: str | None = None,
license_image: str | None = None,
) -> list[dict[str, str]]:
results = DDGS().images(
query,
region=region,
safesearch=safesearch,
timelimit=timelimit,
max_results=max_results,
page=page,
backend=backend,
size=size,
color=color,
type_image=type_image,
layout=layout,
license_image=license_image,
)
print(safesearch)
for i, result in enumerate(results):
print(f"{i+1}: {result['title']} - {result['image']}")
return results
def findVideos(
query: str,
region: str = "us-en",
safesearch: str = "moderate",
timelimit: str | None = None,
max_results: int | None = 10,
page: int = 1,
backend: str = "auto",
resolution: str | None = None,
duration: str | None = None,
license_videos: str | None = None,
) -> list[dict[str, str]]:
results = DDGS().videos(
query,
region=region,
safesearch=safesearch,
timelimit=timelimit,
max_results=max_results,
page=page,
backend=backend,
resolution=resolution,
duration=duration,
license_videos=license_videos,
)
for i, result in enumerate(results):
print(f"{i+1}: {result['title']} - {result['embed_url']}")
return results
def findNews(
query: str,
region: str = "us-en",
safesearch: str = "moderate",
timelimit: str | None = None,
max_results: int | None = 10,
page: int = 1,
backend: str = "auto",
) -> list[dict[str, str]]:
results = DDGS().news(
query,
region=region,
safesearch=safesearch,
timelimit=timelimit,
max_results=max_results,
page=page,
backend=backend,
)
for i, result in enumerate(results):
print(f"{i+1}: {result['title']} - {result['url']}")
return results
def findBooks(
query: str,
max_results: int | None = 10,
page: int = 1,
backend: str = "auto",
) -> list[dict[str, str]]:
results = DDGS().books(
query,
max_results=max_results,
page=page,
backend=backend,
)
for i, result in enumerate(results):
print(f"{i+1}: {result['title']} - {result['url']}")
return results