Skip to main content

A tool for researching and analyzing Google search page behavior and structure

Project description

Google Search Resource (GSR)

A tool for researching and analyzing Google search page behavior and structure.

Purpose

GSR is designed for legitimate research purposes:

  • Understanding how Google search pages are structured
  • Analyzing search result formatting
  • Studying how search interfaces change over time
  • Educational purposes and web development learning

Installation

From Source

# Clone the repository
git clone https://github.com/yaacov/gsr.git
cd gsr

# Complete setup (create venv, install dependencies and browsers)
make setup

# Activate virtual environment
source venv/bin/activate

Test application

python main.py --help

Usage Examples

Basic Search

from modules.searcher import HumanLikeGoogleSearcher
from modules.enums import SearchStatus

# Simple search with defaults
searcher = HumanLikeGoogleSearcher()

try:
    result = searcher.search("python programming")
    
    if result.status == SearchStatus.SUCCESS:
        for r in result.results:
            print(f"{r['title']}: {r['url']}")
    
    elif result.status == SearchStatus.CAPTCHA_DETECTED:
        print("Rate limit reached - stopping research")
        
finally:
    searcher.close()

Development

Setup for Contributors

# Clone and setup
git clone https://github.com/yaacov/gsr.git
cd gsr

# Install with dev dependencies
make install-dev
make install-browsers

# Code quality tools
make format        # Auto-format code
make lint          # Check code style
make format-check  # Check formatting without changes

Building and Publishing

# Build package
make build

# Test on TestPyPI
make publish-test

# Publish to PyPI (production)
make publish

License

MIT License - Copyright (c) 2025 Yaacov Zamir

For educational and research purposes.

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_search_resource-0.0.1.tar.gz (13.4 kB view details)

Uploaded Source

Built Distribution

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

google_search_resource-0.0.1-py3-none-any.whl (15.0 kB view details)

Uploaded Python 3

File details

Details for the file google_search_resource-0.0.1.tar.gz.

File metadata

  • Download URL: google_search_resource-0.0.1.tar.gz
  • Upload date:
  • Size: 13.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for google_search_resource-0.0.1.tar.gz
Algorithm Hash digest
SHA256 6447e10fbcdff9c9569a7ae0a13f195c5a50cdbb174ffa31d10100f96d7b6752
MD5 2b6ffa43977604a346c31379cefb65e5
BLAKE2b-256 9f4e6ea8fe7b77d03c13ef654a1801d5d1ab00455c1bfa511bdc08edc51f9fd4

See more details on using hashes here.

File details

Details for the file google_search_resource-0.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for google_search_resource-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3db748b312b425039db291b590c7bbd669b025c6470faa2820c4ed7fcfbe8b36
MD5 0a8bdafe1fa799fe1d14bb1bb3b46d37
BLAKE2b-256 7cbc3be1160bc7e123a20ec5018128d3347080c7bf53f892e785c4b19a4ae2cd

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