Skip to main content

Seekify - A metasearch library for simple and distributed search.

Project description

Seekify

Your Complete Toolkit for Search

Access diverse search engines, retrieve rich multimedia content, and bypass rate limits – all through one unified library.

PyPI Version Tests Python Version License


📋 Table of Contents


[!NOTE]

  1. Seekify supports over 9 major search engines including: Google, Bing, DuckDuckGo, Brave, Yahoo, Yandex, Mojeek, Grokipedia, and Wikipedia. All providers follow similar usage patterns with consistent interfaces.
  2. Search-IT name was not avilable in pypi so we rebranded it.

🌟 Features

Unified Search API

  • Text Search: Aggregated results from Google, Bing, DuckDuckGo, Yahoo, Yandex, and more.
  • Rich Media: Retrieve images, videos, news, and books through dedicated endpoints.
  • Consistent Format: All results differ in source but share a common, easy-to-parse structure.

Advanced Capabilities

  • Zero Config: No API keys required. It just works.
  • Proxy Support: Fully compatible with HTTP and SOCKS5 proxies to manage identity and avoid rate limits.
  • Data Science Ready: Returns data structures that easily convert to Pandas DataFrames for analysis.
  • Robust CLI: Powerful command-line tools for quick lookups, downloads, and data exports.


⚙️ Installation

Seekify supports multiple installation methods to fit your workflow:

📦 Standard Installation

# Install from PyPI
pip install -U seekify

# Install with valid HTTPS/HTTP2 support
pip install -U "seekify[http2]"

⚡ UV Package Manager (Recommended)

UV is a fast Python package manager. Seekify has full UV support:

# Install UV first (if not already installed)
pip install uv

# Install Seekify with UV
uv add seekify

🚀 Quick Start

Python Script

Seekify is designed to be intuitive. Here is how to perform a simple text search:

from seekify import Search

with Search() as s:
    results = s.text("python programming", max_results=5)
    for r in results:
        print(f"{r['title']} - {r['href']}")

Jupyter Notebook

You can easily collect data into a Pandas DataFrame for analysis:

from seekify import Search
import pandas as pd

# Search and create a DataFrame
with Search() as s:
    results = s.text("artificial intelligence trends", backend="duckduckgo", max_results=20)

df = pd.DataFrame(results)
display(df)

🖥️ Command Line Interface

Seekify includes a powerful CLI for quick queries and data export.

🚀 Direct Commands

# Text Search
seekify text -q "OpenAI" -m 10

# Image Search & Download
seekify images -q "minimalist wallpaper" -m 5 --download --download-directory ./wallpapers

# News Search (Export to JSON)
seekify news -q "tech industry" -m 20 --output news_data.json

📦 Python Module Execution

python -m seekify.cli text -q "search query"

🌐 Supported Engines

The library supports a wide range of backends tailored to specific search types:

Search Type Supported Engines
Text Bing, Brave, DuckDuckGo, Google, Grokipedia, Mojeek, Yahoo, Yandex, Wikipedia
Images DuckDuckGo
Videos DuckDuckGo
News Bing, DuckDuckGo, Yahoo
Books Anna's Archive

🛡️ Proxy Support

Avoid rate limits and IP bans by routing traffic through a proxy.

from seekify import Search

# Using a SOCKS5 proxy (e.g., Tor)
s = Search(proxy="socks5h://127.0.0.1:9050")

# Using an authenticated HTTP proxy
s = Search(proxy="http://user:password@proxy_ip:port")

# Then use normal search methods
results = s.text("privacy tools")

📚 Documentation

For comprehensive usage guides and advanced configuration, please refer to the docs directory.

👏 Credits

  • Based on the work of deedy5/ddgs (formerly Dux), which is no longer maintained. We have expanded upon this foundation with new engines, features, and modernized tooling.

Made with ❤️ by the Seekify team

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

seekify-1.0.1.tar.gz (33.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

seekify-1.0.1-py3-none-any.whl (40.1 kB view details)

Uploaded Python 3

File details

Details for the file seekify-1.0.1.tar.gz.

File metadata

  • Download URL: seekify-1.0.1.tar.gz
  • Upload date:
  • Size: 33.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for seekify-1.0.1.tar.gz
Algorithm Hash digest
SHA256 07a867c5036a8f0fce8e4ba5be05533c96d674aebfac6e7e522ebe14386db59b
MD5 cef215b817b1588d3d108b3fbfa2f03e
BLAKE2b-256 7abca038f1a2d0c8e66d271c9713a84afa37a236b1f2d7eeff130498f394f774

See more details on using hashes here.

File details

Details for the file seekify-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: seekify-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 40.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for seekify-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 aebccfa5e33bfc60695a44b2f7cf3b4388db1f3174b24367524e630feb20e0af
MD5 a6c37b086830f28c0d7c97d7f6e8784e
BLAKE2b-256 5b4a0951f97bbde92ea44951eee6d136fffbb3b85d6171c166d125ca102fab69

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page