Name | pdocr-rpc JSON |
Version |
2023.12.28
JSON |
| download |
home_page | |
Summary | PaddleOCR-RPC |
upload_time | 2023-12-28 03:03:00 |
maintainer | |
docs_url | None |
author | |
requires_python | >=3.7 |
license | |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# pdocr-rpc
基于 `PaddleOCR` 封装的 `RPC` 服务,包含客户端和服务端。
客户端提供了一个简单易用的函数 `ocr`,通过不同的参数控制返回不同的值。
**为什么要分成服务端和客户端?**
因为 `PaddleOCR` 安装**太重**了,如果你的使用场景是需要经常安装,那绝对是一个痛苦的事情,你要是知道它每次安装要装多少东西你肯定会忍不住摇头;
而在服务端一次性安装部署之后,客户端就可以零成本的使用,非常的方便。
---
**Documentation**: <a href="https://linuxdeepin.github.io/pdocr-rpc" target="_blank">https://linuxdeepin.github.io/pdocr-rpc</a>
**Source Code**: <a href="https://github.com/linuxdeepin/pdocr-rpc" target="_blank">https://github.com/linuxdeepin/pdocr-rpc</a>
---
## 1、服务端
### 服务端安装
```console
pip install pdocr-rpc[server]
```
### 服务端启动服务
随意新建一个`py`文件,名称你可以自定义,比如:`ocr_server.py`;
写入以下内容:
```python
# ocr_server.py
from pdocr_rpc.server import server
server()
```
默认端口号为 `8890` 如果你想修改端口:
```python
from pdocr_rpc.server import server
from pdocr_rpc.conf import setting
setting.PORT = 8888
server()
```
## 2、客户端
### 客户端安装
```console
pip install pdocr-rpc
```
### 客户端使用
#### 2.1、识别当前屏幕的所有文字内容
```python
from pdocr_rpc import OCR
from pdocr_rpc.conf import setting
# 注意IP和端口要和你的服务端IP对应
setting.SERVER_IP = "192.168.0.1"
setting.PORT = 8888
OCR.ocr()
```
自动识别当前整个屏幕的所有内容。
#### 2.2、指定某张图片识别的所有文字内容
```python
OCR.ocr(picture_abspath="~/Desktop/test.png")
```
返回识别图片 `test.png` 的内容。
#### 2.3、在全屏指定查找某个字符串的坐标
```python
OCR.ocr("天天向上")
```
返回当前屏幕中,“天天向上”的坐标,如果存在多个,则返回一个字典。
#### 2.4、指定某张图片查找某个字符串的坐标
```python
OCR.ocr("天天向上",picture_abspath="~/Desktop/test.png")
```
#### 2.5、其他参数
- 识别语言
lang: `ch`, `en`, `fr`, `german`, `korean`, `japan`
默认为ch,中文,如果要修改识别语言;
```python
OCR.ocr(lang="ch")
```
- 匹配度
similarity: float
默认为0.6,可以修改为从0到1的数;
```shell
OCR.ocr(similarity=0.1)
```
- 返回原始数据
return_default: bool
默认为False,即默认返回识别到字符串的中心坐标,True表示返回原始数据;
```python
OCR.ocr(return_default=False)
```
- 只返回第一个
return_first: bool
当传入要查找的字符串时,可能存在当前屏幕中有多个目标;
默认情况下是会将识别到的多个目标组装成字典返回;
return_first=True 表示返回识别到的第一个。
```python
OCR.ocr(return_first=True )
```
Raw data
{
"_id": null,
"home_page": "",
"name": "pdocr-rpc",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "",
"keywords": "",
"author": "",
"author_email": "mikigo <1964191531@qq.com>",
"download_url": "https://files.pythonhosted.org/packages/63/96/85a9e6b7a04b5caab0f8985965635eeb9b916b890061654605bb654e0206/pdocr_rpc-2023.12.28.tar.gz",
"platform": null,
"description": "# pdocr-rpc\n\n\u57fa\u4e8e `PaddleOCR` \u5c01\u88c5\u7684 `RPC` \u670d\u52a1\uff0c\u5305\u542b\u5ba2\u6237\u7aef\u548c\u670d\u52a1\u7aef\u3002\n\n\u5ba2\u6237\u7aef\u63d0\u4f9b\u4e86\u4e00\u4e2a\u7b80\u5355\u6613\u7528\u7684\u51fd\u6570 `ocr`\uff0c\u901a\u8fc7\u4e0d\u540c\u7684\u53c2\u6570\u63a7\u5236\u8fd4\u56de\u4e0d\u540c\u7684\u503c\u3002\n\n**\u4e3a\u4ec0\u4e48\u8981\u5206\u6210\u670d\u52a1\u7aef\u548c\u5ba2\u6237\u7aef\uff1f**\n\n\u56e0\u4e3a `PaddleOCR` \u5b89\u88c5**\u592a\u91cd**\u4e86\uff0c\u5982\u679c\u4f60\u7684\u4f7f\u7528\u573a\u666f\u662f\u9700\u8981\u7ecf\u5e38\u5b89\u88c5\uff0c\u90a3\u7edd\u5bf9\u662f\u4e00\u4e2a\u75db\u82e6\u7684\u4e8b\u60c5\uff0c\u4f60\u8981\u662f\u77e5\u9053\u5b83\u6bcf\u6b21\u5b89\u88c5\u8981\u88c5\u591a\u5c11\u4e1c\u897f\u4f60\u80af\u5b9a\u4f1a\u5fcd\u4e0d\u4f4f\u6447\u5934\uff1b\n\n\u800c\u5728\u670d\u52a1\u7aef\u4e00\u6b21\u6027\u5b89\u88c5\u90e8\u7f72\u4e4b\u540e\uff0c\u5ba2\u6237\u7aef\u5c31\u53ef\u4ee5\u96f6\u6210\u672c\u7684\u4f7f\u7528\uff0c\u975e\u5e38\u7684\u65b9\u4fbf\u3002\n\n---\n\n**Documentation**: <a href=\"https://linuxdeepin.github.io/pdocr-rpc\" target=\"_blank\">https://linuxdeepin.github.io/pdocr-rpc</a>\n\n**Source Code**: <a href=\"https://github.com/linuxdeepin/pdocr-rpc\" target=\"_blank\">https://github.com/linuxdeepin/pdocr-rpc</a>\n\n---\n\n## 1\u3001\u670d\u52a1\u7aef\n\n### \u670d\u52a1\u7aef\u5b89\u88c5\n\n```console\npip install pdocr-rpc[server]\n```\n\n### \u670d\u52a1\u7aef\u542f\u52a8\u670d\u52a1\n\n\u968f\u610f\u65b0\u5efa\u4e00\u4e2a`py`\u6587\u4ef6\uff0c\u540d\u79f0\u4f60\u53ef\u4ee5\u81ea\u5b9a\u4e49\uff0c\u6bd4\u5982\uff1a`ocr_server.py`\uff1b\n\n\u5199\u5165\u4ee5\u4e0b\u5185\u5bb9\uff1a\n\n```python\n# ocr_server.py\nfrom pdocr_rpc.server import server\n\nserver()\n```\n\n\u9ed8\u8ba4\u7aef\u53e3\u53f7\u4e3a `8890` \u5982\u679c\u4f60\u60f3\u4fee\u6539\u7aef\u53e3\uff1a\n\n```python\nfrom pdocr_rpc.server import server\nfrom pdocr_rpc.conf import setting\n\nsetting.PORT = 8888\nserver()\n```\n\n## 2\u3001\u5ba2\u6237\u7aef\n\n### \u5ba2\u6237\u7aef\u5b89\u88c5\n\n```console\npip install pdocr-rpc\n```\n\n### \u5ba2\u6237\u7aef\u4f7f\u7528\n\n#### 2.1\u3001\u8bc6\u522b\u5f53\u524d\u5c4f\u5e55\u7684\u6240\u6709\u6587\u5b57\u5185\u5bb9\n\n```python\nfrom pdocr_rpc import OCR\nfrom pdocr_rpc.conf import setting\n\n# \u6ce8\u610fIP\u548c\u7aef\u53e3\u8981\u548c\u4f60\u7684\u670d\u52a1\u7aefIP\u5bf9\u5e94\nsetting.SERVER_IP = \"192.168.0.1\"\nsetting.PORT = 8888\n\nOCR.ocr()\n```\n\n\u81ea\u52a8\u8bc6\u522b\u5f53\u524d\u6574\u4e2a\u5c4f\u5e55\u7684\u6240\u6709\u5185\u5bb9\u3002\n\n#### 2.2\u3001\u6307\u5b9a\u67d0\u5f20\u56fe\u7247\u8bc6\u522b\u7684\u6240\u6709\u6587\u5b57\u5185\u5bb9\n\n```python\nOCR.ocr(picture_abspath=\"~/Desktop/test.png\")\n```\n\n\u8fd4\u56de\u8bc6\u522b\u56fe\u7247 `test.png` \u7684\u5185\u5bb9\u3002 \n\n#### 2.3\u3001\u5728\u5168\u5c4f\u6307\u5b9a\u67e5\u627e\u67d0\u4e2a\u5b57\u7b26\u4e32\u7684\u5750\u6807\n\n```python\nOCR.ocr(\"\u5929\u5929\u5411\u4e0a\")\n```\n\n\u8fd4\u56de\u5f53\u524d\u5c4f\u5e55\u4e2d\uff0c\u201c\u5929\u5929\u5411\u4e0a\u201d\u7684\u5750\u6807\uff0c\u5982\u679c\u5b58\u5728\u591a\u4e2a\uff0c\u5219\u8fd4\u56de\u4e00\u4e2a\u5b57\u5178\u3002\n\n#### 2.4\u3001\u6307\u5b9a\u67d0\u5f20\u56fe\u7247\u67e5\u627e\u67d0\u4e2a\u5b57\u7b26\u4e32\u7684\u5750\u6807\n\n```python\nOCR.ocr(\"\u5929\u5929\u5411\u4e0a\"\uff0cpicture_abspath=\"~/Desktop/test.png\")\n```\n\n#### 2.5\u3001\u5176\u4ed6\u53c2\u6570\n\n- \u8bc6\u522b\u8bed\u8a00\n\n lang\uff1a `ch`, `en`, `fr`, `german`, `korean`, `japan`\n\n \u9ed8\u8ba4\u4e3ach\uff0c\u4e2d\u6587\uff0c\u5982\u679c\u8981\u4fee\u6539\u8bc6\u522b\u8bed\u8a00\uff1b\n\n ```python\n OCR.ocr(lang=\"ch\") \n ```\n\n- \u5339\u914d\u5ea6\n\n similarity: float\n\n \u9ed8\u8ba4\u4e3a0.6\uff0c\u53ef\u4ee5\u4fee\u6539\u4e3a\u4ece0\u52301\u7684\u6570\uff1b\n\n ```shell\n OCR.ocr(similarity=0.1)\n ```\n\n- \u8fd4\u56de\u539f\u59cb\u6570\u636e\n\n return_default: bool\n\n \u9ed8\u8ba4\u4e3aFalse\uff0c\u5373\u9ed8\u8ba4\u8fd4\u56de\u8bc6\u522b\u5230\u5b57\u7b26\u4e32\u7684\u4e2d\u5fc3\u5750\u6807\uff0cTrue\u8868\u793a\u8fd4\u56de\u539f\u59cb\u6570\u636e\uff1b\n\n ```python\n OCR.ocr(return_default=False)\n ```\n\n- \u53ea\u8fd4\u56de\u7b2c\u4e00\u4e2a\n\n return_first: bool\n\n \u5f53\u4f20\u5165\u8981\u67e5\u627e\u7684\u5b57\u7b26\u4e32\u65f6\uff0c\u53ef\u80fd\u5b58\u5728\u5f53\u524d\u5c4f\u5e55\u4e2d\u6709\u591a\u4e2a\u76ee\u6807\uff1b\n\n \u9ed8\u8ba4\u60c5\u51b5\u4e0b\u662f\u4f1a\u5c06\u8bc6\u522b\u5230\u7684\u591a\u4e2a\u76ee\u6807\u7ec4\u88c5\u6210\u5b57\u5178\u8fd4\u56de\uff1b\n\n return_first=True \u8868\u793a\u8fd4\u56de\u8bc6\u522b\u5230\u7684\u7b2c\u4e00\u4e2a\u3002\n\n ```python\n OCR.ocr(return_first=True )\n ```\n\n \n",
"bugtrack_url": null,
"license": "",
"summary": "PaddleOCR-RPC",
"version": "2023.12.28",
"project_urls": {
"Documentation": "https://linuxdeepin.github.io/pdocr-rpc",
"Source": "https://github.com/linuxdeepin/pdocr-rpc"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "8ada5a18efab36ea24365236d3e627fce044112ff08f1a26ced686dad825ea4c",
"md5": "6a4bbab7522d1ad260529e10f90cc3b5",
"sha256": "eea18275f9008396fd7c702e9aaa7fdb4f980ce7bf705f2540aa59cd9b32aae6"
},
"downloads": -1,
"filename": "pdocr_rpc-2023.12.28-py3-none-any.whl",
"has_sig": false,
"md5_digest": "6a4bbab7522d1ad260529e10f90cc3b5",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 12043,
"upload_time": "2023-12-28T03:02:58",
"upload_time_iso_8601": "2023-12-28T03:02:58.606365Z",
"url": "https://files.pythonhosted.org/packages/8a/da/5a18efab36ea24365236d3e627fce044112ff08f1a26ced686dad825ea4c/pdocr_rpc-2023.12.28-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "639685a9e6b7a04b5caab0f8985965635eeb9b916b890061654605bb654e0206",
"md5": "8b8742664d64fe4e0a0b6a3429ad6de9",
"sha256": "a7b2a40d0d0a4819c4e6db541798dfff13160314372c91f63e95279b0eb99621"
},
"downloads": -1,
"filename": "pdocr_rpc-2023.12.28.tar.gz",
"has_sig": false,
"md5_digest": "8b8742664d64fe4e0a0b6a3429ad6de9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 9775,
"upload_time": "2023-12-28T03:03:00",
"upload_time_iso_8601": "2023-12-28T03:03:00.899859Z",
"url": "https://files.pythonhosted.org/packages/63/96/85a9e6b7a04b5caab0f8985965635eeb9b916b890061654605bb654e0206/pdocr_rpc-2023.12.28.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-12-28 03:03:00",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "linuxdeepin",
"github_project": "pdocr-rpc",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "pdocr-rpc"
}