Skip to main content

Patent Searcher

A simplified Python wrapper for the EPO OPS (European Patent Office Open Patent Service) API that makes patent searching easy and intuitive.

Patent Searcher is a patent search orchestrator designed to abstract away the complexity of the EPO OPS API. Instead of dealing with complicated XML responses and verbose API calls, you get a simple, clean interface that returns ranked, relevant results in JSON format.

Quickstart

Here's a simple example to retrieve information about a specific patent:

from patent_searcher import PatentSearcher

# Provide credentials directly
client = PatentSearcher(
    consumer_key="your_consumer_key",
    secret_key="your_secret_key"
)

result = client.match("EP4318332A1")

Getting Started

Prerequisites

  • Python >= 3.11

Installation

Install the library from PyPI:

pip install patent-searcher

Features

Get patent data using Match

Retrieve comprehensive information about a patent by its publication number.

Basic Usage:

# Get core patent data (title, abstract, inventors, dates, classifications, family, status)
result = client.match("EP4318332A1")

# Include optional fields as needed
result = client.match("EP4318332A1", 
                     citations=True,      # Include patent and non-patent references
                     claims=True,         # Include patent claims
                     description=True,    # Include full technical description
                     multi_language=True) # Include all available languages

→ Full .match() Documentation — Detailed field descriptions, parameter options, and examples

Search for patents using the Find method

Search for patents using keywords with intelligent ranking and deduplication.

Basic Usage:

# Simple keyword search
results = client.find("quantum computing")
print(f"Found {len(results)} patents")
print(f"Top result: {results[0]['title']}")

# Advanced search with reference patent and custom parameters
results = client.find(
    keywords="machine learning neural networks",
    max_results=50,                    # Limit results (default: 100)
    reference_patent="EP4318332A1",    # Use CPC classes from reference
    deduplicate_families=True,         # Remove family duplicates (default: True)
    jurisdictions=["EP", "WO", "US"]  # Jurisdiction priority
)

→ Full .find() Documentation — Detailed parameters, scoring system, best practices, and use cases

Architecture

Patent Searcher uses a modular, opt-in architecture designed for efficiency, flexibility, and LLM compatibility.

→ Full Architecture Documentation — Design principles, benefits, use cases, and rationale

Contribute

If you want to contribute or modify the library, clone the repository and install in development mode:

Using uv (recommended)

uv provides faster dependency resolution and better environment management. Installation guide

# Install library and dependencies
uv sync

# For development (includes pytest and python-dotenv)
uv sync --extra dev

Using pip

# Create a virtual environment (optional but recommended)
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

# Install library in editable mode
pip install -e .

# For development (includes pytest and python-dotenv)
pip install -e ".[dev]"

Licence

This project is licenced under the Apache License 2.0. See the LICENSE file for details.

Copyright © 2025 Atrineo AG

Metadata

Release files for patent-searcher 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for patent-searcher 0.1.0
File Size Uploaded
patent_searcher-0.1.0.tar.gz 47.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for patent-searcher 0.1.0
File Interpreter ABI Platform
patent_searcher-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 72.9 kB

Release files / patent_searcher-0.1.0.tar.gz

Download URL patent_searcher-0.1.0.tar.gz
Size 47.1 kB
Tags Source
SHA-256 checksum
How to use checksums
3d2308ffb791a84a5e71bca4f98c8f5e9cf684699c7a3b206671a18c6dc20895
BLAKE2b-256 checksum
How to use checksums
a9b0f3edc39d608f4a9c2f76066ab6d8a4b411a4521ece3403a19f5b92065ade
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.14

Release files / patent_searcher-0.1.0-py3-none-any.whl

Download URL patent_searcher-0.1.0-py3-none-any.whl
Size 25.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0971cc8504f896bd45475f66fc775ae73323eeea7b951b277afd484bf7906fd3
BLAKE2b-256 checksum
How to use checksums
2bd1c3ee2ad7fefae70531298b4d08d021018f23d9b44894245fadedfca908b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.14

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page