Official client for Siftrics' Sight API, which is a text recognition service
Project description
This repository contains the official Sight API Python client. The Sight API is a text recognition service.
Quickstart
- Install the package.
pip install sight-api
or
poetry add sight-api
etc.
- Grab an API key from the Sight dashboard.
- Create a client, passing your API key into the constructor, and recognize text:
import sight_api
client = sight_api.Client('xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx')
pages = client.recognize(['invoice.pdf', 'receipt_1.png'])
pages
looks like this:
[
{
"Error": "",
"FileIndex": 0,
"PageNumber": 1,
"NumberOfPagesInFile": 3,
"RecognizedText": [ ... ]
},
...
]
FileIndex
is the index of this file in the original request's "files" array.
RecognizedText
looks like this:
"RecognizedText": [
{
"Text": "Invoice",
"Confidence": 0.22863210084975458
"TopLeftX": 395,
"TopLeftY": 35,
"TopRightX": 449,
"TopRightY": 35,
"BottomLeftX": 395,
"BottomLeftY": 47,
"BottomRightX": 449,
"BottomRightY": 47,
},
...
]
Streaming in Results
If you process more than one page in a single .recognize([ ... ])
call, results may come in over time, instead of all at once.
To access results (pages
objects) as soon as they come in, there is a generator you can use:
for pages in self.recognizeAsGenerator(['invoice.pdf', 'receipt_1.png']):
print(pages)
In fact, .recognize([ ... ])
is defined in terms of that generator:
class Client:
...
def recognize(self, files):
...
pages = list()
for ps in self.recognizeAsGenerator(files):
pages.extend(ps)
return pages
Here is the official documentation for the Sight API.
Apache V2 License
This code is licensed under Apache V2.0. The full text of the license can be found in the "LICENSE" file.
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
Built Distribution
Hashes for sight_api-1.0.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c11323e3fa99a7a60d1b2cec359ed2f46adca00e052a2e4367034877100328a5 |
|
MD5 | b09dcd4b7b8df68835f49021d7a25aa5 |
|
BLAKE2b-256 | 62d8928bc4fe742ba1c070bd89cbb7f60d76c71f62f5e390825ad83316e5bed3 |