Skip to main content

free google results

Project description

SearchLite 🔍

A lightning-fast, asynchronous real-time Google Search API wrapper with built-in optimization for batch queries. selenium + chromedriver for endless google search results

PyPI version Python 3.7+ License: MIT

Features ✨

  • 🚀 Real-time Google search results
  • 🔄 Asynchronous batch searching
  • 🎯 Optimized for multiple queries
  • 🧹 Automatic duplicate removal
  • 🎨 Optional progress animation
  • 🔧 Configurable worker pool

Installation 📦

pip install searchlite

Quick Start 🚀

Basic Search

from searchlite import RealTimeGoogleSearchProvider

# Initialize the search provider
searcher = RealTimeGoogleSearchProvider()

# Single query search
results = searcher.search("Python programming", max_urls=5)
print(results)

Batch Search

# Multiple queries at once
queries = [
    "machine learning basics",
    "data science projects",
    "python best practices"
]

# Batch search with async execution
results = searcher.search_batch(queries, max_urls=10)
print(results)

Advanced Usage 🔧

Custom Configuration

searcher = RealTimeGoogleSearchProvider(
    search_provider="google",  # Search engine to use
    chromedriver_path="/custom/path/chromedriver",  # Custom ChromeDriver path
    max_workers=4,  # Number of concurrent workers
    animation=True  # Enable progress animation
)

Async Implementation

import asyncio

async def main():
    searcher = RealTimeGoogleSearchProvider()
    queries = ["AI news", "Python updates", "Tech trends"]
    
    # Using the internal async method
    results = await searcher._async_batch_search(queries, max_urls=5)
    return results

# Run async function
results = asyncio.run(main())

Features Explained 📚

URL Processing

  • Automatic hash fragment removal
  • Duplicate URL filtering
  • Configurable result limit
  • Maintains original URL order

Batch Processing

  • Concurrent execution
  • Memory efficient
  • Automatic error handling
  • Result aggregation

Requirements 🛠️

  • Python 3.7+
  • ChromeDriver
  • Required Python packages:
    • selenium
    • asyncio
    • typing

Contributing 🤝

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License 📄

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments 🙏

  • Inspired by the need for efficient real-time search capabilities
  • Built with ❤️ for the Python community
  • Special thanks to all contributors

Support 💬

For support, please open an issue in the GitHub repository or contact the maintainers.


Made with ❤️

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

searchlite-0.7.7.tar.gz (5.7 kB view details)

Uploaded Source

Built Distribution

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

searchlite-0.7.7-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

Details for the file searchlite-0.7.7.tar.gz.

File metadata

  • Download URL: searchlite-0.7.7.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.11.0rc1 Linux/6.8.0-49-generic

File hashes

Hashes for searchlite-0.7.7.tar.gz
Algorithm Hash digest
SHA256 9a334c038b5587c8c7e89003aea1c2042195c645e19e2f2fa198f1e89736c926
MD5 e439114bfb2628fa634d4f5b82dd58d1
BLAKE2b-256 c7ac17e2b511f85f99e06cf2036a38c6f3f336ea5a60a229f58dfdac3697cbe0

See more details on using hashes here.

File details

Details for the file searchlite-0.7.7-py3-none-any.whl.

File metadata

  • Download URL: searchlite-0.7.7-py3-none-any.whl
  • Upload date:
  • Size: 7.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.11.0rc1 Linux/6.8.0-49-generic

File hashes

Hashes for searchlite-0.7.7-py3-none-any.whl
Algorithm Hash digest
SHA256 b8b3fb39f51915ff5d42e96c2daf0c2b7c355b73b73a2572d373ace853de24bb
MD5 3eb05a21f25cd2bd3c9216a81a418d8b
BLAKE2b-256 62fd043277f25c16f57b0705a30b4e599a744f9117b5e9a6f3997ec2df4b34b2

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