Skip to main content

Python library for fetching and parsing Google search results.

Project description

Google Open Search API Python Module

Overview

The Google Search API Python Module is a Python library that allows you to fetch and parse Google search results programmatically. It provides an easy-to-use interface to perform Google searches and retrieve search result data such as titles, URLs, snippets, and displayed links.

Installation

You can install the google-opensearch-api module using pip:

pip install google-opensearch-api

Usage

Basic Example

from google_search_api.google_search_api import GoogleSearchAPI

# Initialize GoogleSearchAPI object
google_search_api = GoogleSearchAPI()

# Perform a Google search
query = "Cyber Security"
num_results = 10
search_results = google_search_api.google_search(query, num_results)

# Print search results in JSON format
print(search_results)

Advanced Usage

Parameters

  • query (str): The search query to be performed.
  • num_results (int, optional): Number of search results to retrieve (default is 10).

CLI Usage

You can use the google-opensearch command line tool to perform Google searches:

google-search "cyber security" --num_results 5

Docker Container Usage

You can use the google-opensearch-api Docker container to perform Google searches:

docker run -it --rm google-opensearch-api "cyber security" --num_results 5

Output

The google_search method returns a JSON string containing search results and metadata:

{
    "metadata": {
        "num_requested": 10,
        "total_items_fetched": 10,
        "runtime_seconds": 1.234
    },
    "results": [
        {
            "id": 1,
            "title": "Example Result Title",
            "link": "https://example.com",
            "snippet": "Example result snippet text.",
            "displayed_link": "example.com"
        },
        {
            "id": 2,
            "title": "Another Result Title",
            "link": "https://another-example.com",
            "snippet": "Another result snippet.",
            "displayed_link": "another-example.com"
        },
        ...
    ]
}

Notes

  • Duplicates: The module automatically removes duplicate URLs from the search results.
  • Snippet: Snippet text may not be available for all results depending on Google's HTML structure.

Contributing

Contributions to the google-search-api module are welcome! You can contribute by forking the repository, making changes, and submitting a pull request.

License

The google-search-api module is licensed under the MIT license.

Support

For any issues or questions related to the google-search-api module, please open an issue on GitHub.

Acknowledgments

  • The google-search-api module utilizes requests and beautifulsoup4 libraries for web scraping and parsing HTML.
  • This module was inspired by the Google Search API.

Authors

Changelog

  • v1.0.0 (2024-06-15)
    • Initial release of the google-search-api module.

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

google_opensearch_api-1.0.9.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

google_opensearch_api-1.0.9-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

Details for the file google_opensearch_api-1.0.9.tar.gz.

File metadata

  • Download URL: google_opensearch_api-1.0.9.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.9.19

File hashes

Hashes for google_opensearch_api-1.0.9.tar.gz
Algorithm Hash digest
SHA256 fb3d574f3f83adc76c8b6d4726b03281c2a40891d76fd783f12b0212fe323b9b
MD5 6d9ae49e0dbd10b21989589c79707ec9
BLAKE2b-256 96d0ed468377b3feac3ddd4622d7d95595d03361225f7bc8c2e32cb243b00978

See more details on using hashes here.

File details

Details for the file google_opensearch_api-1.0.9-py3-none-any.whl.

File metadata

File hashes

Hashes for google_opensearch_api-1.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 693a2c580e370a820ad620ef2f890093242f185082cf67cc12d899179c879da8
MD5 3be16eb7a39b548e6afd40ab7db1e56d
BLAKE2b-256 ec2ef659ee3e3c5e3027e909b2038b0a43c629d9b87c64526cd460629e844ecf

See more details on using hashes here.

Supported by

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