structocr 1.3.0__tar.gz → 1.4.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: structocr
3
- Version: 1.3.0
4
- Summary: The official Python SDK for StructOCR API - Passport, ID card, Driver License OCR, Invoice, Receipts, VIN, HIN and Container OCR.
3
+ Version: 1.4.0
4
+ Summary: The official Python SDK for StructOCR API - Passport, ID card, Driver License OCR, Invoice, Receipts, VIN, HIN, License plate, and Container OCR.
5
5
  Home-page: https://structocr.com
6
6
  Author: StructOCR Team
7
7
  Author-email: support@structocr.com
@@ -34,17 +34,16 @@ Dynamic: summary
34
34
 
35
35
  **The official Python client for [StructOCR](https://structocr.com).**
36
36
 
37
- StructOCR is a powerful API tailored for developers to extract structured data from complex documents and physical assets with high accuracy. This SDK helps you integrate **Passport OCR**, **National ID OCR**, **Driver License OCR**, **Invoice OCR**, **Receipt OCR**, **VIN OCR**, **HIN OCR**, and **Container OCR** into your Python applications in minutes.
37
+ StructOCR is a powerful API tailored for developers to extract structured data from complex documents and physical assets with high accuracy. This SDK helps you integrate **Passport OCR**, **National ID OCR**, **Driver License OCR**, **Invoice OCR**, **Receipt OCR**, **VIN OCR**, **HIN OCR**, **Container OCR**, and **License Plate OCR** into your Python applications in minutes.
38
38
 
39
39
  👉 **[Get your Free API Key here](https://structocr.com)**
40
40
 
41
41
  -----
42
42
 
43
- ## 🚀 What's New in 1.3.0
43
+ ## 🚀 What's New in 1.4.0
44
44
 
45
- We've massively upgraded our Identity Verification engine!
46
- * **Hybrid VIZ + MRZ AI for National IDs**: The SDK now automatically cross-validates unstructured Visual Zone (VIZ) data against cryptographic Machine Readable Zone (MRZ) checksums (TD1/TD2) for zero hallucination. Raw MRZ lines are now accessible via `additional_fields`.
47
- * *Previous marine & expense additions (Receipt OCR, HIN OCR, Container OCR) remain fully supported.*
45
+ * **License Plate OCR**: We've launched a specialized ALPR engine optimized for SEA plates. It accurately extracts native scripts (Thai, Khmer, etc.), plate numbers, colors, and vehicle types without forcing foreign formatting rules.
46
+ * *Previous updates (Hybrid VIZ + MRZ AI for National IDs, marine & expense additions) remain fully supported.*
48
47
 
49
48
  Check out the [Quick Start](#quick-start) below to see how easy it is to use them!
50
49
 
@@ -55,6 +54,7 @@ Check out the [Quick Start](#quick-start) below to see how easy it is to use the
55
54
  - **Passport OCR API**: Instantly extract MRZ, name, DOB, and expiry date from passports of 200+ countries.
56
55
  - **National ID OCR**: Extract regional specific fields (CNP, CPF, NIN) and raw ICAO 9303 MRZ lines with hybrid validation.
57
56
  - **Driver License OCR**: Extract vehicle class, license number, and personal details.
57
+ - **License Plate OCR**: Extract SEA-optimized plate numbers, regional texts, plate colors, and vehicle types.
58
58
  - **Invoice OCR**: Extract invoice number, currency, merchant, customer, and financial totals.
59
59
  - **Receipt OCR**: Extract merchants, dates, line items, taxes, and totals for expense management.
60
60
  - **VIN OCR**: Extract VIN (Vehicle Identification Number) from windshield or engine bay images.
@@ -68,20 +68,22 @@ Install the package via pip:
68
68
 
69
69
  ```bash
70
70
  pip install structocr
71
+
71
72
  ```
72
73
 
73
74
  ## Quick Start
74
75
 
75
- ### 1\. Initialize the Client
76
+ ### 1. Initialize the Client
76
77
 
77
78
  ```python
78
79
  from structocr import StructOCR
79
80
 
80
81
  # Initialize with your API Key
81
82
  client = StructOCR(api_key="sk_live_xxxxxxxx")
83
+
82
84
  ```
83
85
 
84
- ### 2\. Scan a Passport (Passport OCR)
86
+ ### 2. Scan a Passport (Passport OCR)
85
87
 
86
88
  ```python
87
89
  # Pass the path to the passport image file
@@ -89,11 +91,15 @@ result = client.scan_passport('./docs/passport_sample.jpg')
89
91
 
90
92
  print(f"Name: {result['data']['name']}")
91
93
  print(f"Passport Number: {result['data']['document_number']}")
94
+
92
95
  ```
93
96
 
94
- ### 3\. Scan Other Documents and Assets
97
+ ### 3. Scan Other Documents and Assets
95
98
 
96
99
  ```python
100
+ # License Plate OCR (New in 1.4.0)
101
+ plate_data = client.scan_license_plate('./docs/license_plate.jpg')
102
+
97
103
  # National ID OCR
98
104
  id_data = client.scan_national_id('./docs/id_card.png')
99
105
 
@@ -103,17 +109,18 @@ license_data = client.scan_driver_license('./docs/license.jpg')
103
109
  # Invoice OCR
104
110
  invoice_data = client.scan_invoice('./docs/invoice.jpg')
105
111
 
106
- # Receipt OCR (New in 1.2.0)
112
+ # Receipt OCR
107
113
  receipt_data = client.scan_receipt('./docs/receipt.jpg')
108
114
 
109
115
  # VIN OCR
110
116
  vin_data = client.scan_vin('./docs/vin.jpg')
111
117
 
112
- # HIN OCR (New in 1.2.0)
118
+ # HIN OCR
113
119
  hin_data = client.scan_hin('./docs/boat_hin.jpg')
114
120
 
115
121
  # Container OCR
116
122
  container_data = client.scan_container('./docs/container.jpg')
123
+
117
124
  ```
118
125
 
119
126
  ## Documentation
@@ -122,8 +129,8 @@ For full API documentation, response examples, and error codes, please visit the
122
129
 
123
130
  ## Requirements
124
131
 
125
- * Python 3.7+
126
- * `requests` library
132
+ * Python 3.7+
133
+ * `requests` library
127
134
 
128
135
  ## License
129
136
 
@@ -5,17 +5,16 @@
5
5
 
6
6
  **The official Python client for [StructOCR](https://structocr.com).**
7
7
 
8
- StructOCR is a powerful API tailored for developers to extract structured data from complex documents and physical assets with high accuracy. This SDK helps you integrate **Passport OCR**, **National ID OCR**, **Driver License OCR**, **Invoice OCR**, **Receipt OCR**, **VIN OCR**, **HIN OCR**, and **Container OCR** into your Python applications in minutes.
8
+ StructOCR is a powerful API tailored for developers to extract structured data from complex documents and physical assets with high accuracy. This SDK helps you integrate **Passport OCR**, **National ID OCR**, **Driver License OCR**, **Invoice OCR**, **Receipt OCR**, **VIN OCR**, **HIN OCR**, **Container OCR**, and **License Plate OCR** into your Python applications in minutes.
9
9
 
10
10
  👉 **[Get your Free API Key here](https://structocr.com)**
11
11
 
12
12
  -----
13
13
 
14
- ## 🚀 What's New in 1.3.0
14
+ ## 🚀 What's New in 1.4.0
15
15
 
16
- We've massively upgraded our Identity Verification engine!
17
- * **Hybrid VIZ + MRZ AI for National IDs**: The SDK now automatically cross-validates unstructured Visual Zone (VIZ) data against cryptographic Machine Readable Zone (MRZ) checksums (TD1/TD2) for zero hallucination. Raw MRZ lines are now accessible via `additional_fields`.
18
- * *Previous marine & expense additions (Receipt OCR, HIN OCR, Container OCR) remain fully supported.*
16
+ * **License Plate OCR**: We've launched a specialized ALPR engine optimized for SEA plates. It accurately extracts native scripts (Thai, Khmer, etc.), plate numbers, colors, and vehicle types without forcing foreign formatting rules.
17
+ * *Previous updates (Hybrid VIZ + MRZ AI for National IDs, marine & expense additions) remain fully supported.*
19
18
 
20
19
  Check out the [Quick Start](#quick-start) below to see how easy it is to use them!
21
20
 
@@ -26,6 +25,7 @@ Check out the [Quick Start](#quick-start) below to see how easy it is to use the
26
25
  - **Passport OCR API**: Instantly extract MRZ, name, DOB, and expiry date from passports of 200+ countries.
27
26
  - **National ID OCR**: Extract regional specific fields (CNP, CPF, NIN) and raw ICAO 9303 MRZ lines with hybrid validation.
28
27
  - **Driver License OCR**: Extract vehicle class, license number, and personal details.
28
+ - **License Plate OCR**: Extract SEA-optimized plate numbers, regional texts, plate colors, and vehicle types.
29
29
  - **Invoice OCR**: Extract invoice number, currency, merchant, customer, and financial totals.
30
30
  - **Receipt OCR**: Extract merchants, dates, line items, taxes, and totals for expense management.
31
31
  - **VIN OCR**: Extract VIN (Vehicle Identification Number) from windshield or engine bay images.
@@ -39,20 +39,22 @@ Install the package via pip:
39
39
 
40
40
  ```bash
41
41
  pip install structocr
42
+
42
43
  ```
43
44
 
44
45
  ## Quick Start
45
46
 
46
- ### 1\. Initialize the Client
47
+ ### 1. Initialize the Client
47
48
 
48
49
  ```python
49
50
  from structocr import StructOCR
50
51
 
51
52
  # Initialize with your API Key
52
53
  client = StructOCR(api_key="sk_live_xxxxxxxx")
54
+
53
55
  ```
54
56
 
55
- ### 2\. Scan a Passport (Passport OCR)
57
+ ### 2. Scan a Passport (Passport OCR)
56
58
 
57
59
  ```python
58
60
  # Pass the path to the passport image file
@@ -60,11 +62,15 @@ result = client.scan_passport('./docs/passport_sample.jpg')
60
62
 
61
63
  print(f"Name: {result['data']['name']}")
62
64
  print(f"Passport Number: {result['data']['document_number']}")
65
+
63
66
  ```
64
67
 
65
- ### 3\. Scan Other Documents and Assets
68
+ ### 3. Scan Other Documents and Assets
66
69
 
67
70
  ```python
71
+ # License Plate OCR (New in 1.4.0)
72
+ plate_data = client.scan_license_plate('./docs/license_plate.jpg')
73
+
68
74
  # National ID OCR
69
75
  id_data = client.scan_national_id('./docs/id_card.png')
70
76
 
@@ -74,17 +80,18 @@ license_data = client.scan_driver_license('./docs/license.jpg')
74
80
  # Invoice OCR
75
81
  invoice_data = client.scan_invoice('./docs/invoice.jpg')
76
82
 
77
- # Receipt OCR (New in 1.2.0)
83
+ # Receipt OCR
78
84
  receipt_data = client.scan_receipt('./docs/receipt.jpg')
79
85
 
80
86
  # VIN OCR
81
87
  vin_data = client.scan_vin('./docs/vin.jpg')
82
88
 
83
- # HIN OCR (New in 1.2.0)
89
+ # HIN OCR
84
90
  hin_data = client.scan_hin('./docs/boat_hin.jpg')
85
91
 
86
92
  # Container OCR
87
93
  container_data = client.scan_container('./docs/container.jpg')
94
+
88
95
  ```
89
96
 
90
97
  ## Documentation
@@ -93,8 +100,8 @@ For full API documentation, response examples, and error codes, please visit the
93
100
 
94
101
  ## Requirements
95
102
 
96
- * Python 3.7+
97
- * `requests` library
103
+ * Python 3.7+
104
+ * `requests` library
98
105
 
99
106
  ## License
100
107
 
@@ -2,23 +2,21 @@ from setuptools import setup, find_packages
2
2
 
3
3
  setup(
4
4
  name="structocr",
5
- version="1.3.0",
6
- description="The official Python SDK for StructOCR API - Passport, ID card, Driver License OCR, Invoice, Receipts, VIN, HIN and Container OCR.",
5
+ version="1.4.0",
6
+ description="The official Python SDK for StructOCR API - Passport, ID card, Driver License OCR, Invoice, Receipts, VIN, HIN, License plate, and Container OCR.",
7
7
  long_description=open("README.md").read(),
8
8
  long_description_content_type="text/markdown",
9
9
 
10
10
  author="StructOCR Team",
11
11
  author_email="support@structocr.com",
12
12
 
13
- # 1. 这里通常放主页或者 GitHub 地址 (PyPI 标题下的链接)
14
13
  url="https://structocr.com",
15
14
 
16
- # 2. 这里定义侧边栏的具体链接 (Homepage, Documentation, Source 等)
17
15
  project_urls={
18
16
  "Homepage": "https://structocr.com",
19
- "Documentation": "https://structocr.com/developers", # 假设你的文档在这里
17
+ "Documentation": "https://structocr.com/developers",
20
18
  "Source": "https://github.com/structocr/structocr-python",
21
- "Tracker": "https://github.com/structocr/structocr-python/issues", # 问题追踪
19
+ "Tracker": "https://github.com/structocr/structocr-python/issues",
22
20
  },
23
21
 
24
22
  packages=find_packages(),
@@ -0,0 +1,5 @@
1
+ __version__ = "1.4.0"
2
+
3
+ from .client import StructOCR
4
+
5
+ __all__ = ['StructOCR']
@@ -21,7 +21,7 @@ class StructOCR:
21
21
  self.session.headers.update({
22
22
  "x-api-key": self.api_key,
23
23
  "Content-Type": "application/json",
24
- "User-Agent": "StructOCR-Python/1.3.0"
24
+ "User-Agent": "StructOCR-Python/1.4.0"
25
25
  })
26
26
 
27
27
  def _post_image(self, endpoint, file_path):
@@ -103,11 +103,11 @@ class StructOCR:
103
103
 
104
104
  def scan_container(self, file_path):
105
105
  """
106
- Scan a shipping container number (集装箱号).
106
+ Scan a shipping container number.
107
107
  path: Path to the container image file.
108
108
  Returns: Structured JSON data.
109
109
  """
110
- # Endpoint: /v1/container (这里假设你的后端路由是 container,如果不同请替换)
110
+ # Endpoint: /v1/container
111
111
  return self._post_image('container', file_path)
112
112
 
113
113
  def scan_hin(self, file_path):
@@ -126,4 +126,13 @@ class StructOCR:
126
126
  Returns: Structured JSON data.
127
127
  """
128
128
  # Endpoint: /v1/receipt
129
- return self._post_image('receipt', file_path)
129
+ return self._post_image('receipt', file_path)
130
+
131
+ def scan_license_plate(self, file_path):
132
+ """
133
+ Scan a Vehicle License Plate (Optimized for Southeast Asia).
134
+ path: Path to the license plate image file.
135
+ Returns: Structured JSON data including plate_number, region_text, plate_color, etc.
136
+ """
137
+ # Endpoint: /v1/license-plate
138
+ return self._post_image('license-plate', file_path)
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: structocr
3
- Version: 1.3.0
4
- Summary: The official Python SDK for StructOCR API - Passport, ID card, Driver License OCR, Invoice, Receipts, VIN, HIN and Container OCR.
3
+ Version: 1.4.0
4
+ Summary: The official Python SDK for StructOCR API - Passport, ID card, Driver License OCR, Invoice, Receipts, VIN, HIN, License plate, and Container OCR.
5
5
  Home-page: https://structocr.com
6
6
  Author: StructOCR Team
7
7
  Author-email: support@structocr.com
@@ -34,17 +34,16 @@ Dynamic: summary
34
34
 
35
35
  **The official Python client for [StructOCR](https://structocr.com).**
36
36
 
37
- StructOCR is a powerful API tailored for developers to extract structured data from complex documents and physical assets with high accuracy. This SDK helps you integrate **Passport OCR**, **National ID OCR**, **Driver License OCR**, **Invoice OCR**, **Receipt OCR**, **VIN OCR**, **HIN OCR**, and **Container OCR** into your Python applications in minutes.
37
+ StructOCR is a powerful API tailored for developers to extract structured data from complex documents and physical assets with high accuracy. This SDK helps you integrate **Passport OCR**, **National ID OCR**, **Driver License OCR**, **Invoice OCR**, **Receipt OCR**, **VIN OCR**, **HIN OCR**, **Container OCR**, and **License Plate OCR** into your Python applications in minutes.
38
38
 
39
39
  👉 **[Get your Free API Key here](https://structocr.com)**
40
40
 
41
41
  -----
42
42
 
43
- ## 🚀 What's New in 1.3.0
43
+ ## 🚀 What's New in 1.4.0
44
44
 
45
- We've massively upgraded our Identity Verification engine!
46
- * **Hybrid VIZ + MRZ AI for National IDs**: The SDK now automatically cross-validates unstructured Visual Zone (VIZ) data against cryptographic Machine Readable Zone (MRZ) checksums (TD1/TD2) for zero hallucination. Raw MRZ lines are now accessible via `additional_fields`.
47
- * *Previous marine & expense additions (Receipt OCR, HIN OCR, Container OCR) remain fully supported.*
45
+ * **License Plate OCR**: We've launched a specialized ALPR engine optimized for SEA plates. It accurately extracts native scripts (Thai, Khmer, etc.), plate numbers, colors, and vehicle types without forcing foreign formatting rules.
46
+ * *Previous updates (Hybrid VIZ + MRZ AI for National IDs, marine & expense additions) remain fully supported.*
48
47
 
49
48
  Check out the [Quick Start](#quick-start) below to see how easy it is to use them!
50
49
 
@@ -55,6 +54,7 @@ Check out the [Quick Start](#quick-start) below to see how easy it is to use the
55
54
  - **Passport OCR API**: Instantly extract MRZ, name, DOB, and expiry date from passports of 200+ countries.
56
55
  - **National ID OCR**: Extract regional specific fields (CNP, CPF, NIN) and raw ICAO 9303 MRZ lines with hybrid validation.
57
56
  - **Driver License OCR**: Extract vehicle class, license number, and personal details.
57
+ - **License Plate OCR**: Extract SEA-optimized plate numbers, regional texts, plate colors, and vehicle types.
58
58
  - **Invoice OCR**: Extract invoice number, currency, merchant, customer, and financial totals.
59
59
  - **Receipt OCR**: Extract merchants, dates, line items, taxes, and totals for expense management.
60
60
  - **VIN OCR**: Extract VIN (Vehicle Identification Number) from windshield or engine bay images.
@@ -68,20 +68,22 @@ Install the package via pip:
68
68
 
69
69
  ```bash
70
70
  pip install structocr
71
+
71
72
  ```
72
73
 
73
74
  ## Quick Start
74
75
 
75
- ### 1\. Initialize the Client
76
+ ### 1. Initialize the Client
76
77
 
77
78
  ```python
78
79
  from structocr import StructOCR
79
80
 
80
81
  # Initialize with your API Key
81
82
  client = StructOCR(api_key="sk_live_xxxxxxxx")
83
+
82
84
  ```
83
85
 
84
- ### 2\. Scan a Passport (Passport OCR)
86
+ ### 2. Scan a Passport (Passport OCR)
85
87
 
86
88
  ```python
87
89
  # Pass the path to the passport image file
@@ -89,11 +91,15 @@ result = client.scan_passport('./docs/passport_sample.jpg')
89
91
 
90
92
  print(f"Name: {result['data']['name']}")
91
93
  print(f"Passport Number: {result['data']['document_number']}")
94
+
92
95
  ```
93
96
 
94
- ### 3\. Scan Other Documents and Assets
97
+ ### 3. Scan Other Documents and Assets
95
98
 
96
99
  ```python
100
+ # License Plate OCR (New in 1.4.0)
101
+ plate_data = client.scan_license_plate('./docs/license_plate.jpg')
102
+
97
103
  # National ID OCR
98
104
  id_data = client.scan_national_id('./docs/id_card.png')
99
105
 
@@ -103,17 +109,18 @@ license_data = client.scan_driver_license('./docs/license.jpg')
103
109
  # Invoice OCR
104
110
  invoice_data = client.scan_invoice('./docs/invoice.jpg')
105
111
 
106
- # Receipt OCR (New in 1.2.0)
112
+ # Receipt OCR
107
113
  receipt_data = client.scan_receipt('./docs/receipt.jpg')
108
114
 
109
115
  # VIN OCR
110
116
  vin_data = client.scan_vin('./docs/vin.jpg')
111
117
 
112
- # HIN OCR (New in 1.2.0)
118
+ # HIN OCR
113
119
  hin_data = client.scan_hin('./docs/boat_hin.jpg')
114
120
 
115
121
  # Container OCR
116
122
  container_data = client.scan_container('./docs/container.jpg')
123
+
117
124
  ```
118
125
 
119
126
  ## Documentation
@@ -122,8 +129,8 @@ For full API documentation, response examples, and error codes, please visit the
122
129
 
123
130
  ## Requirements
124
131
 
125
- * Python 3.7+
126
- * `requests` library
132
+ * Python 3.7+
133
+ * `requests` library
127
134
 
128
135
  ## License
129
136
 
@@ -1,5 +0,0 @@
1
- __version__ = "1.2.0"
2
-
3
- from .client import StructOCR
4
-
5
- __all__ = ['StructOCR']
File without changes