Skip to main content

Unofficial Python client for Google AI Search with multi-tab chat support

Project description

Google AI Search - Python Client

PyPI version Python 3.12+ License: MIT

Unofficial Python client for Google AI Search with support for multiple independent chat sessions using browser automation.

Features

Key Features:

  • 🤖 Interact with Google AI Search using Python
  • 💬 Create multiple independent chat sessions
  • 🖼️ Send images along with text messages
  • 🌐 Browser-based automation with Playwright

Installation

From PyPI (Recommended)

pip install google-ai-search-chat

From GitHub (Latest Development Version)

pip install git+https://github.com/yourusername/google-ai-search-chat.git

From Source

git clone https://github.com/yourusername/google-ai-search-chat.git
cd google-ai-search-chat
pip install -e .

Browser Driver Setup

The library uses Playwright for browser automation. Install required browsers:

playwright install chromium

Quick Start

Basic Usage

from google_ai_search_chat import GoogleAISession

# Create a session
session = GoogleAISession(user_data_dir=r"C:\chrome-profile", headless=False)

# Create a new chat
chat = session.new_chat()

# Send a message and get response
response = chat.send_message("Hello, what's the weather like?")
print(response)

# Create another independent chat in a new tab
chat2 = session.new_chat()
response2 = chat2.send_message("What is Python?")
print(response2)

# Cleanup
session.close()

Sending Images

from google_ai_search_chat import GoogleAISession

session = GoogleAISession(user_data_dir=r"C:\chrome-profile")
chat = session.new_chat()

# Send image with message
with open("image.jpg", "rb") as f:
    response = chat.send_message("What's in this image?", f.read())
    print(response)

session.close()

Headless Mode

# Headless mode (no browser window shown)
session = GoogleAISession(user_data_dir=r"C:\chrome-profile", headless=True)
chat = session.new_chat()
response = chat.send_message("Test message")
session.close()

API Reference

GoogleAISession

Main class for managing browser sessions and multiple chats.

GoogleAISession(user_data_dir: str = r"C:\chrome-profile", headless: bool = True)

Parameters:

  • user_data_dir (str): Path to Chrome profile directory for cookie persistence
  • headless (bool): Run browser in headless mode (default: True)

Methods:

  • new_chat() -> ChatGoogleAI: Create a new independent chat session
  • close_all_chats() -> None: Close all open chats
  • close() -> None: Close all chats and the browser session

ChatGoogleAI

Represents a single chat session.

Methods:

  • send_message(message: str, photo: bytes | None = None) -> str: Send a message (with optional image)
  • close() -> None: Close the chat

Requirements

  • Python 3.12+
  • Chromium browser (installed via Playwright)
  • At least 500MB disk space for browser installation

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_ai_search_chat-0.1.4.tar.gz (35.2 kB view details)

Uploaded Source

Built Distribution

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

google_ai_search_chat-0.1.4-py3-none-any.whl (6.6 kB view details)

Uploaded Python 3

File details

Details for the file google_ai_search_chat-0.1.4.tar.gz.

File metadata

  • Download URL: google_ai_search_chat-0.1.4.tar.gz
  • Upload date:
  • Size: 35.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for google_ai_search_chat-0.1.4.tar.gz
Algorithm Hash digest
SHA256 077b905dee6dd2a4bba3d3bdeca853d0ec04bad474b8a70b080bca801bfece11
MD5 98e13793fce749284e07654f90d92214
BLAKE2b-256 a6e083233331e98490085d0b91bf8d5319d35c9532b2d669cb33f3c5a87b75fe

See more details on using hashes here.

File details

Details for the file google_ai_search_chat-0.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for google_ai_search_chat-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 be611debb16aac3d20f5476ebb6b6f4c8be2ca5c474495e603962ce7f90bf1aa
MD5 0dda780c72a3960c040ee83474604320
BLAKE2b-256 5917041afa5490fd996e84583a7d72c05e381412a22319d6d1ae2822569bfe24

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