patent-client


Namepatent-client JSON
Version 4.1.10 PyPI version JSON
download
home_pagehttps://github.com/parkerhancock/patent_client
SummaryA set of ORM-style clients for publicly available intellectual property data
upload_time2024-01-02 17:16:20
maintainer
docs_urlNone
authorParker Hancock
requires_python>=3.9,<3.13
licenseApache Software License 2.0
keywords patent intellectual property usitc epo ops trademark inpadoc 337
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            [![patent_client_logo](https://raw.githubusercontent.com/parkerhancock/patent_client/master/docs/_static/patent_client_logo.svg)](https://patent-client.readthedocs.io)

[![Build](https://github.com/parkerhancock/patent_client/actions/workflows/build.yaml/badge.svg)](https://github.com/parkerhancock/patent_client/actions/workflows/build.yaml)
[![codecov](https://codecov.io/gh/parkerhancock/patent_client/branch/master/graph/badge.svg?token=pWsiQLHi6r)](https://codecov.io/gh/parkerhancock/patent_client)
[![Documentation](https://img.shields.io/readthedocs/patent-client/stable)](https://patent-client.readthedocs.io/en/stable/)


[![PyPI](https://img.shields.io/pypi/v/patent-client?color=blue)](https://pypi.org/project/patent-client)
[![PyPI - Python Versions](https://img.shields.io/pypi/pyversions/patent-client)](https://pypi.org/project/patent-client)
[![Downloads](https://static.pepy.tech/badge/patent_client/month)](https://pepy.tech/project/patent_client)
[![Pydantic v2](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/pydantic/pydantic/main/docs/badge/v2.json)](https://pydantic.dev)

# Summary

A powerful library for accessing intellectual property, featuring:

- 🍰 **Ease of use:** All sources use a simple unified API inspired by [Django-ORM][DORM].
- 🐼 **Pandas Integration:** Results are easily castable to [Pandas Dataframes and Series][PANDAS].
- 🚀 **Performance:** Fetched data is retrieved using the [httpx][httpx] library with native HTTP/2 and asyncio support, and cached using the [hishel][hishel] library for super-fast queries, and [yankee][yankee] for data extraction.
- 🌐 **Async/Await Support:** All API's (optionally!) support the async/await syntax.
- 🔮 **Pydantic v2 Support:** All models retrieved are [Pydantic v2 models][pydantic] with all the goodness that comes with them!

Docs, including a fulsome Getting Started and User Guide are available on [Read the Docs](http://patent-client.readthedocs.io). The Examples folder includes examples of using `patent_client` for
many common IP tasks

## Coverage

- [United States Patent & Trademark Office][USPTO]

  - [Patent Examination Data][PEDS] - Full Support
  - [Global Dossier][GD] - Full Support
  - [Patent Assignment Data][Assignment] - Lookup Support
  - [Patent Trial & Appeal Board API v2][PTAB] - Supports Proceedings, Decisions, and Documents
  - [Patent Public Search][PPS] - Full Support
  - [Bulk Data Storage System][BDSS] - Full Support


- [European Patent Office - Open Patent Services][OPS]

  - Inpadoc - Full Support
  - EPO Register - No Support (in progress)
  - Classification - No Support

* Free software: Apache Software License 2.0

[DORM]: https://docs.djangoproject.com/en/4.0/topics/db/queries/
[PANDAS]: https://pandas.pydata.org/docs/
[httpx]: https://www.python-httpx.org/
[hishel]: https://hishel.com/
[yankee]: https://github.com/parkerhancock/yankee
[Assignment]: https://developer.uspto.gov/api-catalog/patent-assignment-search-beta
[OPS]: http://ops.epo.org
[PPS]:  https://ppubs.uspto.gov/pubwebapp/static/pages/landing.html
[PEDS]: https://developer.uspto.gov/api-catalog/ped
[PTAB]: https://developer.uspto.gov/api-catalog/ptab-api-v2
[USPTO]: http://developer.uspto.gov
[BDSS]: https://developer.uspto.gov/api-catalog/bdss
[GD]: https://globaldossier.uspto.gov
[pydantic]: https://docs.pydantic.dev/latest/


## Installation

```
pip install patent_client
```

If you only want access to USPTO resources, you're done!
However, additional setup is necessary to access EPO Inpadoc and EPO Register resources. See the [Docs](http://patent-client.readthedocs.io).


## Quick Start

To use the project:

```python
# Import the model classes you need
>>> from patent_client import Inpadoc, Assignment, USApplication

# Fetch US Applications
>>> app = USApplication.objects.get('15710770')
>>> app.patent_title
'Camera Assembly with Concave-Shaped Front Face'

# Fetch from USPTO Assignments
>>> assignments = Assignment.objects.filter(assignee='Google')
>>> len(assignments) > 23000
True
>>> assignment = Assignment.objects.get('47086-788')
>>> assignment.conveyance_text
'ASSIGNMENT OF ASSIGNORS INTEREST'

# Fetch from INPADOC
>>> pub = Inpadoc.objects.get('EP3082535A1')
>>> pub.biblio.title
'AUTOMATIC FLUID DISPENSER'

```

## Async Quick Start

To use the asyncio methods, simply use `async with` for iterators, and call any methods with a `a` prefix:

```python
apps = list()
async for app in USApplication.objects.filter(first_named_applicant="Google"):
  apps.append(app)

app = await USApplication.objects.aget("16123456")

```

<!-- RTD-IGNORE -->

## Documentation

Docs, including a fulsome Getting Started are available on [Read the Docs](http://patent-client.readthedocs.io).

<!-- END-RTD-IGNORE -->

# Development

To run the all tests run:

```
pytest
```

A developer guide is provided in the [Documentation](http://patent-client.readthedocs.io).
Pull requests welcome!

# Related projects

- [Python EPO OPS Client](https://github.com/55minutes/python-epo-ops-client)
- [Google Public Patent Data](https://github.com/google/patents-public-data)
- [PatentsView API Wrapper](https://github.com/mikeym88/PatentsView-API-Wrapper)
- [USPTO Scrapy Scraper](https://github.com/blazers08/USPTO)


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/parkerhancock/patent_client",
    "name": "patent-client",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.9,<3.13",
    "maintainer_email": "",
    "keywords": "patent,intellectual property,usitc,epo,ops,trademark,inpadoc,337",
    "author": "Parker Hancock",
    "author_email": "633163+parkerhancock@users.noreply.github.com",
    "download_url": "https://files.pythonhosted.org/packages/0c/27/c5ece82295c50eb5061d151fc3b5246825f602c808bf917b25144ee73956/patent_client-4.1.10.tar.gz",
    "platform": null,
    "description": "[![patent_client_logo](https://raw.githubusercontent.com/parkerhancock/patent_client/master/docs/_static/patent_client_logo.svg)](https://patent-client.readthedocs.io)\n\n[![Build](https://github.com/parkerhancock/patent_client/actions/workflows/build.yaml/badge.svg)](https://github.com/parkerhancock/patent_client/actions/workflows/build.yaml)\n[![codecov](https://codecov.io/gh/parkerhancock/patent_client/branch/master/graph/badge.svg?token=pWsiQLHi6r)](https://codecov.io/gh/parkerhancock/patent_client)\n[![Documentation](https://img.shields.io/readthedocs/patent-client/stable)](https://patent-client.readthedocs.io/en/stable/)\n\n\n[![PyPI](https://img.shields.io/pypi/v/patent-client?color=blue)](https://pypi.org/project/patent-client)\n[![PyPI - Python Versions](https://img.shields.io/pypi/pyversions/patent-client)](https://pypi.org/project/patent-client)\n[![Downloads](https://static.pepy.tech/badge/patent_client/month)](https://pepy.tech/project/patent_client)\n[![Pydantic v2](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/pydantic/pydantic/main/docs/badge/v2.json)](https://pydantic.dev)\n\n# Summary\n\nA powerful library for accessing intellectual property, featuring:\n\n- \ud83c\udf70 **Ease of use:** All sources use a simple unified API inspired by [Django-ORM][DORM].\n- \ud83d\udc3c **Pandas Integration:** Results are easily castable to [Pandas Dataframes and Series][PANDAS].\n- \ud83d\ude80 **Performance:** Fetched data is retrieved using the [httpx][httpx] library with native HTTP/2 and asyncio support, and cached using the [hishel][hishel] library for super-fast queries, and [yankee][yankee] for data extraction.\n- \ud83c\udf10 **Async/Await Support:** All API's (optionally!) support the async/await syntax.\n- \ud83d\udd2e **Pydantic v2 Support:** All models retrieved are [Pydantic v2 models][pydantic] with all the goodness that comes with them!\n\nDocs, including a fulsome Getting Started and User Guide are available on [Read the Docs](http://patent-client.readthedocs.io). The Examples folder includes examples of using `patent_client` for\nmany common IP tasks\n\n## Coverage\n\n- [United States Patent & Trademark Office][USPTO]\n\n  - [Patent Examination Data][PEDS] - Full Support\n  - [Global Dossier][GD] - Full Support\n  - [Patent Assignment Data][Assignment] - Lookup Support\n  - [Patent Trial & Appeal Board API v2][PTAB] - Supports Proceedings, Decisions, and Documents\n  - [Patent Public Search][PPS] - Full Support\n  - [Bulk Data Storage System][BDSS] - Full Support\n\n\n- [European Patent Office - Open Patent Services][OPS]\n\n  - Inpadoc - Full Support\n  - EPO Register - No Support (in progress)\n  - Classification - No Support\n\n* Free software: Apache Software License 2.0\n\n[DORM]: https://docs.djangoproject.com/en/4.0/topics/db/queries/\n[PANDAS]: https://pandas.pydata.org/docs/\n[httpx]: https://www.python-httpx.org/\n[hishel]: https://hishel.com/\n[yankee]: https://github.com/parkerhancock/yankee\n[Assignment]: https://developer.uspto.gov/api-catalog/patent-assignment-search-beta\n[OPS]: http://ops.epo.org\n[PPS]:  https://ppubs.uspto.gov/pubwebapp/static/pages/landing.html\n[PEDS]: https://developer.uspto.gov/api-catalog/ped\n[PTAB]: https://developer.uspto.gov/api-catalog/ptab-api-v2\n[USPTO]: http://developer.uspto.gov\n[BDSS]: https://developer.uspto.gov/api-catalog/bdss\n[GD]: https://globaldossier.uspto.gov\n[pydantic]: https://docs.pydantic.dev/latest/\n\n\n## Installation\n\n```\npip install patent_client\n```\n\nIf you only want access to USPTO resources, you're done!\nHowever, additional setup is necessary to access EPO Inpadoc and EPO Register resources. See the [Docs](http://patent-client.readthedocs.io).\n\n\n## Quick Start\n\nTo use the project:\n\n```python\n# Import the model classes you need\n>>> from patent_client import Inpadoc, Assignment, USApplication\n\n# Fetch US Applications\n>>> app = USApplication.objects.get('15710770')\n>>> app.patent_title\n'Camera Assembly with Concave-Shaped Front Face'\n\n# Fetch from USPTO Assignments\n>>> assignments = Assignment.objects.filter(assignee='Google')\n>>> len(assignments) > 23000\nTrue\n>>> assignment = Assignment.objects.get('47086-788')\n>>> assignment.conveyance_text\n'ASSIGNMENT OF ASSIGNORS INTEREST'\n\n# Fetch from INPADOC\n>>> pub = Inpadoc.objects.get('EP3082535A1')\n>>> pub.biblio.title\n'AUTOMATIC FLUID DISPENSER'\n\n```\n\n## Async Quick Start\n\nTo use the asyncio methods, simply use `async with` for iterators, and call any methods with a `a` prefix:\n\n```python\napps = list()\nasync for app in USApplication.objects.filter(first_named_applicant=\"Google\"):\n  apps.append(app)\n\napp = await USApplication.objects.aget(\"16123456\")\n\n```\n\n<!-- RTD-IGNORE -->\n\n## Documentation\n\nDocs, including a fulsome Getting Started are available on [Read the Docs](http://patent-client.readthedocs.io).\n\n<!-- END-RTD-IGNORE -->\n\n# Development\n\nTo run the all tests run:\n\n```\npytest\n```\n\nA developer guide is provided in the [Documentation](http://patent-client.readthedocs.io).\nPull requests welcome!\n\n# Related projects\n\n- [Python EPO OPS Client](https://github.com/55minutes/python-epo-ops-client)\n- [Google Public Patent Data](https://github.com/google/patents-public-data)\n- [PatentsView API Wrapper](https://github.com/mikeym88/PatentsView-API-Wrapper)\n- [USPTO Scrapy Scraper](https://github.com/blazers08/USPTO)\n\n",
    "bugtrack_url": null,
    "license": "Apache Software License 2.0",
    "summary": "A set of ORM-style clients for publicly available intellectual property data",
    "version": "4.1.10",
    "project_urls": {
        "Documentation": "https://patent-client.readthedocs.io",
        "Homepage": "https://github.com/parkerhancock/patent_client",
        "Repository": "https://github.com/parkerhancock/patent_client"
    },
    "split_keywords": [
        "patent",
        "intellectual property",
        "usitc",
        "epo",
        "ops",
        "trademark",
        "inpadoc",
        "337"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f42b1c0738db1bee52aa27214823b8b2a2c64d9c17af7d84085cdd28a286d3c8",
                "md5": "41d1267a4dd1d675ebc961d29f4ef47c",
                "sha256": "21bfc51dbd97f691c10a0d6a0dd019f4501e127c179d2542503e59f894f3ff02"
            },
            "downloads": -1,
            "filename": "patent_client-4.1.10-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "41d1267a4dd1d675ebc961d29f4ef47c",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9,<3.13",
            "size": 2359422,
            "upload_time": "2024-01-02T17:16:17",
            "upload_time_iso_8601": "2024-01-02T17:16:17.330008Z",
            "url": "https://files.pythonhosted.org/packages/f4/2b/1c0738db1bee52aa27214823b8b2a2c64d9c17af7d84085cdd28a286d3c8/patent_client-4.1.10-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0c27c5ece82295c50eb5061d151fc3b5246825f602c808bf917b25144ee73956",
                "md5": "b9240907fb06c795fc1326d27ecd1e81",
                "sha256": "07b0c2f58a3177e6319854c4117ca4f9597e48d3c6ca33dfee1ee3ef878c152c"
            },
            "downloads": -1,
            "filename": "patent_client-4.1.10.tar.gz",
            "has_sig": false,
            "md5_digest": "b9240907fb06c795fc1326d27ecd1e81",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9,<3.13",
            "size": 2273568,
            "upload_time": "2024-01-02T17:16:20",
            "upload_time_iso_8601": "2024-01-02T17:16:20.064161Z",
            "url": "https://files.pythonhosted.org/packages/0c/27/c5ece82295c50eb5061d151fc3b5246825f602c808bf917b25144ee73956/patent_client-4.1.10.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-01-02 17:16:20",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "parkerhancock",
    "github_project": "patent_client",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "lcname": "patent-client"
}
        
Elapsed time: 0.17555s