# Docling Parse
[![PyPI version](https://img.shields.io/pypi/v/docling-parse)](https://pypi.org/project/docling-parse/)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/docling-parse)](https://pypi.org/project/docling-parse/)
[![Poetry](https://img.shields.io/endpoint?url=https://python-poetry.org/badge/v0.json)](https://python-poetry.org/)
[![Pybind11](https://img.shields.io/badge/build-pybind11-blue)](https://github.com/pybind/pybind11/)
[![Platforms](https://img.shields.io/badge/platform-macos%20|%20linux%20|%20windows-blue)](https://github.com/DS4SD/docling-parse/)
[![License MIT](https://img.shields.io/github/license/DS4SD/docling-parse)](https://opensource.org/licenses/MIT)
Simple package to extract text, paths and bitmap images with coordinates from programmatic PDFs.
This package is used in the [Docling](https://github.com/DS4SD/docling) PDF conversion.
<table>
<tr>
<th>Version</th>
<th>Original</th>
<th>Word-level</th>
<th>Snippet-level</th>
<th>Performance</th>
</tr>
<tr>
<th>V1</th>
<td rowspan="2"><img src="./docs/example_visualisations/2305.14962v1.pdf_page=0.png" alt="screenshot" width="100"/></td>
<td>Not Supported</td>
<td><img src="./docs/example_visualisations/2305.14962v1.pdf_page=0.v1.png" alt="v1 snippet" width="100"/></td>
<td>~0.250 page/sec</td>
</tr>
<tr>
<th>V2</th>
<!-- The "Original" column image spans from the previous row -->
<td><img src="./docs/example_visualisations/2305.14962v1.pdf_page=0.v2.original.png" alt="v1 word" width="100"/></td>
<td><img src="./docs/example_visualisations/2305.14962v1.pdf_page=0.v2.sanitized.png" alt="v2 snippet" width="100"/></td>
<td>~0.050 page/sec <br><br>[~5-10X faster than v1]</td>
</tr>
</table>
## Quick start
Install the package from Pypi
```sh
pip install docling-parse
```
Convert a PDF (look in the [visualise.py](docling_parse/visualise.py) for a more detailed information)
```python
from docling_parse.docling_parse import pdf_parser_v2
# Do this only once to load fonts (avoid initialising it many times)
parser = pdf_parser_v2("error") # info, warning, error, fatal
doc_file = "my-doc.pdf" # filename
doc_key = f"key={pdf_doc}" # unique document key (eg hash, UUID, etc)
# Load the document from file using filename doc_file. This only loads
# the QPDF document, but no extracted data
success = parser.load_document(doc_key, doc_file)
# Open the file in binary mode and read its contents
# with open(pdf_doc, "rb") as file:
# file_content = file.read()
# Create a BytesIO object and write the file contents to it
# bytes_io = io.BytesIO(file_content)
# success = parser.load_document_from_bytesio(doc_key, bytes_io)
# Parse the entire document in one go, easier, but could require
# a lot (more) memory as parsing page-by-page
# json_doc = parser.parse_pdf_from_key(doc_key)
# Get number of pages
num_pages = parser.number_of_pages(doc_key)
# Parse page by page to minimize memory footprint
for page in range(0, num_pages):
# Internal memory for page is auto-deleted after this call.
# No need to unload a specifc page
json_doc = parser.parse_pdf_from_key_on_page(doc_key, page)
if "pages" not in json_doc: # page could not get parsed
continue
# parsed page is the first one!
json_page = json_doc["pages"][0]
# <Insert your own code>
# Unload the (QPDF) document and buffers
parser.unload_document(doc_key)
# Unloads everything at once
# parser.unload_documents()
```
Use the CLI
```sh
$ docling-parse -h
usage: docling-parse [-h] -p PDF
Process a PDF file.
options:
-h, --help show this help message and exit
-p PDF, --pdf PDF Path to the PDF file
```
## Performance Benchmarks
We ran the v1 and v2 parser on [DocLayNet](https://huggingface.co/datasets/ds4sd/DocLayNet-v1.1). We found the following overall behavior
![parser-performance](./docs/dln-v1.png)
## Development
### CXX
To build the parse, simply run the following command in the root folder,
```sh
rm -rf build; cmake -B ./build; cd build; make
```
You can run the parser from your build folder. Example from parse_v1,
```sh
% ./parse_v1.exe -h
A program to process PDF files or configuration files
Usage:
PDFProcessor [OPTION...]
-i, --input arg Input PDF file
-c, --config arg Config file
--create-config arg Create config file
-o, --output arg Output file
-l, --loglevel arg loglevel [error;warning;success;info]
-h, --help Print usage
```
Example from parse_v2,
```sh
% ./parse_v2.exe -h
program to process PDF files or configuration files
Usage:
PDFProcessor [OPTION...]
-i, --input arg Input PDF file
-c, --config arg Config file
--create-config arg Create config file
-p, --page arg Pages to process (default: -1 for all) (default:
-1)
-o, --output arg Output file
-l, --loglevel arg loglevel [error;warning;success;info]
-h, --help Print usage
```
If you dont have an input file, then a template input file will be printed on the terminal.
### Python
To build the package, simply run (make sure [poetry](https://python-poetry.org/) is [installed](https://python-poetry.org/docs/#installing-with-the-official-installer)),
```
poetry install
```
To test the package, run:
```
poetry run pytest ./tests -v -s
```
## Contributing
Please read [Contributing to Docling Parse](https://github.com/DS4SD/docling-parse/blob/main/CONTRIBUTING.md) for details.
## References
If you use Docling in your projects, please consider citing the following:
```bib
@techreport{Docling,
author = {Deep Search Team},
month = {8},
title = {Docling Technical Report},
url = {https://arxiv.org/abs/2408.09869},
eprint = {2408.09869},
doi = {10.48550/arXiv.2408.09869},
version = {1.0.0},
year = {2024}
}
```
## License
The Docling Parse codebase is under MIT license.
For individual model usage, please refer to the model licenses found in the original packages.
Raw data
{
"_id": null,
"home_page": "https://github.com/DS4SD/docling-parse",
"name": "docling-parse",
"maintainer": "Peter Staar",
"docs_url": null,
"requires_python": "<4.0,>=3.9",
"maintainer_email": "taa@zurich.ibm.com",
"keywords": "docling, pdf, parser",
"author": "Peter Staar",
"author_email": "taa@zurich.ibm.com",
"download_url": "https://files.pythonhosted.org/packages/44/00/470cb9e2eaea562b7a7c8d61f70cee22eecfe1cc3a02848cead9ded95048/docling_parse-3.0.0.tar.gz",
"platform": null,
"description": "# Docling Parse\n\n[![PyPI version](https://img.shields.io/pypi/v/docling-parse)](https://pypi.org/project/docling-parse/)\n[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/docling-parse)](https://pypi.org/project/docling-parse/)\n[![Poetry](https://img.shields.io/endpoint?url=https://python-poetry.org/badge/v0.json)](https://python-poetry.org/)\n[![Pybind11](https://img.shields.io/badge/build-pybind11-blue)](https://github.com/pybind/pybind11/)\n[![Platforms](https://img.shields.io/badge/platform-macos%20|%20linux%20|%20windows-blue)](https://github.com/DS4SD/docling-parse/)\n[![License MIT](https://img.shields.io/github/license/DS4SD/docling-parse)](https://opensource.org/licenses/MIT)\n\nSimple package to extract text, paths and bitmap images with coordinates from programmatic PDFs.\nThis package is used in the [Docling](https://github.com/DS4SD/docling) PDF conversion.\n\n<table>\n <tr>\n <th>Version</th>\n <th>Original</th>\n <th>Word-level</th>\n <th>Snippet-level</th>\n <th>Performance</th>\n </tr>\n <tr>\n <th>V1</th>\n <td rowspan=\"2\"><img src=\"./docs/example_visualisations/2305.14962v1.pdf_page=0.png\" alt=\"screenshot\" width=\"100\"/></td>\n <td>Not Supported</td>\n <td><img src=\"./docs/example_visualisations/2305.14962v1.pdf_page=0.v1.png\" alt=\"v1 snippet\" width=\"100\"/></td>\n <td>~0.250 page/sec</td>\n </tr>\n <tr>\n <th>V2</th>\n <!-- The \"Original\" column image spans from the previous row -->\n <td><img src=\"./docs/example_visualisations/2305.14962v1.pdf_page=0.v2.original.png\" alt=\"v1 word\" width=\"100\"/></td>\n <td><img src=\"./docs/example_visualisations/2305.14962v1.pdf_page=0.v2.sanitized.png\" alt=\"v2 snippet\" width=\"100\"/></td>\n <td>~0.050 page/sec <br><br>[~5-10X faster than v1]</td>\n </tr>\n</table>\n\n## Quick start\n\nInstall the package from Pypi\n\n```sh\npip install docling-parse\n```\n\nConvert a PDF (look in the [visualise.py](docling_parse/visualise.py) for a more detailed information)\n\n```python\nfrom docling_parse.docling_parse import pdf_parser_v2\n\n# Do this only once to load fonts (avoid initialising it many times)\nparser = pdf_parser_v2(\"error\") # info, warning, error, fatal\n\ndoc_file = \"my-doc.pdf\" # filename\ndoc_key = f\"key={pdf_doc}\" # unique document key (eg hash, UUID, etc)\n\n# Load the document from file using filename doc_file. This only loads\n# the QPDF document, but no extracted data\nsuccess = parser.load_document(doc_key, doc_file)\n\n# Open the file in binary mode and read its contents\n# with open(pdf_doc, \"rb\") as file:\n# file_content = file.read()\n\n# Create a BytesIO object and write the file contents to it\n# bytes_io = io.BytesIO(file_content)\n# success = parser.load_document_from_bytesio(doc_key, bytes_io)\n\n# Parse the entire document in one go, easier, but could require\n# a lot (more) memory as parsing page-by-page\n# json_doc = parser.parse_pdf_from_key(doc_key)\t\n\n# Get number of pages\nnum_pages = parser.number_of_pages(doc_key)\n\n# Parse page by page to minimize memory footprint\nfor page in range(0, num_pages):\n\n # Internal memory for page is auto-deleted after this call.\n # No need to unload a specifc page \n json_doc = parser.parse_pdf_from_key_on_page(doc_key, page)\n\n if \"pages\" not in json_doc: # page could not get parsed\n continue\n\n # parsed page is the first one!\t\t\t\t \n json_page = json_doc[\"pages\"][0] \n \n\t# <Insert your own code>\n\n# Unload the (QPDF) document and buffers\nparser.unload_document(doc_key)\n\n# Unloads everything at once\n# parser.unload_documents()\n```\n\nUse the CLI\n\n```sh\n$ docling-parse -h\nusage: docling-parse [-h] -p PDF\n\nProcess a PDF file.\n\noptions:\n -h, --help show this help message and exit\n -p PDF, --pdf PDF Path to the PDF file\n```\n\n## Performance Benchmarks\n\nWe ran the v1 and v2 parser on [DocLayNet](https://huggingface.co/datasets/ds4sd/DocLayNet-v1.1). We found the following overall behavior\n\n![parser-performance](./docs/dln-v1.png)\n\n## Development\n\n### CXX\n\nTo build the parse, simply run the following command in the root folder,\n\n```sh\nrm -rf build; cmake -B ./build; cd build; make\n```\n\nYou can run the parser from your build folder. Example from parse_v1,\n\n```sh\n% ./parse_v1.exe -h\nA program to process PDF files or configuration files\nUsage:\n PDFProcessor [OPTION...]\n\n -i, --input arg Input PDF file\n -c, --config arg Config file\n --create-config arg Create config file\n -o, --output arg Output file\n -l, --loglevel arg loglevel [error;warning;success;info]\n -h, --help Print usage\n```\n\nExample from parse_v2,\n\n```sh\n% ./parse_v2.exe -h\nprogram to process PDF files or configuration files\nUsage:\n PDFProcessor [OPTION...]\n\n -i, --input arg Input PDF file\n -c, --config arg Config file\n --create-config arg Create config file\n -p, --page arg Pages to process (default: -1 for all) (default:\n -1)\n -o, --output arg Output file\n -l, --loglevel arg loglevel [error;warning;success;info]\n -h, --help Print usage\n```\n\nIf you dont have an input file, then a template input file will be printed on the terminal.\n\n\n### Python\n\nTo build the package, simply run (make sure [poetry](https://python-poetry.org/) is [installed](https://python-poetry.org/docs/#installing-with-the-official-installer)),\n\n```\npoetry install\n```\n\nTo test the package, run:\n\n```\npoetry run pytest ./tests -v -s\n```\n\n\n## Contributing\n\nPlease read [Contributing to Docling Parse](https://github.com/DS4SD/docling-parse/blob/main/CONTRIBUTING.md) for details.\n\n\n## References\n\nIf you use Docling in your projects, please consider citing the following:\n\n```bib\n@techreport{Docling,\n author = {Deep Search Team},\n month = {8},\n title = {Docling Technical Report},\n url = {https://arxiv.org/abs/2408.09869},\n eprint = {2408.09869},\n doi = {10.48550/arXiv.2408.09869},\n version = {1.0.0},\n year = {2024}\n}\n```\n\n## License\n\nThe Docling Parse codebase is under MIT license.\nFor individual model usage, please refer to the model licenses found in the original packages.\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Simple package to extract text with coordinates from programmatic PDFs",
"version": "3.0.0",
"project_urls": {
"Homepage": "https://github.com/DS4SD/docling-parse",
"Repository": "https://github.com/DS4SD/docling-parse"
},
"split_keywords": [
"docling",
" pdf",
" parser"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "b01a644481461387f7221752cd1d35b411747f806a1229a62bf6ffa52b3f03a7",
"md5": "f71bb63a614a2722ef8b336122f279f8",
"sha256": "8de583f9562549379b8878f4054c17a715ac492999187855a6178c258388d1c6"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp310-cp310-macosx_13_0_x86_64.whl",
"has_sig": false,
"md5_digest": "f71bb63a614a2722ef8b336122f279f8",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": "<4.0,>=3.9",
"size": 22023624,
"upload_time": "2024-12-09T11:12:17",
"upload_time_iso_8601": "2024-12-09T11:12:17.113492Z",
"url": "https://files.pythonhosted.org/packages/b0/1a/644481461387f7221752cd1d35b411747f806a1229a62bf6ffa52b3f03a7/docling_parse-3.0.0-cp310-cp310-macosx_13_0_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "21cf7191ec8b9b2276b96b06dec36c5a83fe9631a5046f15a680e8d0225df2c9",
"md5": "bae2ca21595b23f6c7826701f4cb4514",
"sha256": "0a504152836b52119c84ce6f2124006b2297eca9576c1e961745f774b8f55f59"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp310-cp310-macosx_14_0_arm64.whl",
"has_sig": false,
"md5_digest": "bae2ca21595b23f6c7826701f4cb4514",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": "<4.0,>=3.9",
"size": 21909089,
"upload_time": "2024-12-09T11:12:22",
"upload_time_iso_8601": "2024-12-09T11:12:22.784432Z",
"url": "https://files.pythonhosted.org/packages/21/cf/7191ec8b9b2276b96b06dec36c5a83fe9631a5046f15a680e8d0225df2c9/docling_parse-3.0.0-cp310-cp310-macosx_14_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d2d18bbe6dbc2c4065f0e9aa833b73fb6d5eb3bd3fecf50491f490ab829a6855",
"md5": "44b64b396ea1aaf0548eb87f788dfa8f",
"sha256": "e73836d75127b168073e76a4170ec615ee49d6d46ac37d1a3f9d5c585b2c4363"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "44b64b396ea1aaf0548eb87f788dfa8f",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": "<4.0,>=3.9",
"size": 22350328,
"upload_time": "2024-12-09T11:12:26",
"upload_time_iso_8601": "2024-12-09T11:12:26.663305Z",
"url": "https://files.pythonhosted.org/packages/d2/d1/8bbe6dbc2c4065f0e9aa833b73fb6d5eb3bd3fecf50491f490ab829a6855/docling_parse-3.0.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1b30fe8fc2a28000a7045ab29f7b38810b4f90f4e25b6009676fc48ad20cf937",
"md5": "488c885a5ba690eaab9a96bacdb1e21c",
"sha256": "1fdff7e14e50c0f66350346082f1fdf6cbc0584bef809532075593fa0c2a2ab2"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "488c885a5ba690eaab9a96bacdb1e21c",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": "<4.0,>=3.9",
"size": 22416774,
"upload_time": "2024-12-09T11:12:30",
"upload_time_iso_8601": "2024-12-09T11:12:30.092450Z",
"url": "https://files.pythonhosted.org/packages/1b/30/fe8fc2a28000a7045ab29f7b38810b4f90f4e25b6009676fc48ad20cf937/docling_parse-3.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "cbdd2f74b66529ffc44e6ede99345783ed5200a568d05d2e1958d018d75072a7",
"md5": "3e374f839280f735d878b8b9499e51a8",
"sha256": "f56ae44328f7242e7420330d3d737d5284ec256af8ecd0b02fe6e34719b3040a"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "3e374f839280f735d878b8b9499e51a8",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": "<4.0,>=3.9",
"size": 23215427,
"upload_time": "2024-12-09T11:12:32",
"upload_time_iso_8601": "2024-12-09T11:12:32.591937Z",
"url": "https://files.pythonhosted.org/packages/cb/dd/2f74b66529ffc44e6ede99345783ed5200a568d05d2e1958d018d75072a7/docling_parse-3.0.0-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e9e96acb98d30633b04bb4ab522154d7491c04e4e21eedb8ba6270672a5074fa",
"md5": "8ef33f91310ddbe46a181c5a34dab1ff",
"sha256": "f228587e0d3a8f46fec46934e324d74be90d7f1ad96579c775644b130f28acdb"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp311-cp311-macosx_13_0_x86_64.whl",
"has_sig": false,
"md5_digest": "8ef33f91310ddbe46a181c5a34dab1ff",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": "<4.0,>=3.9",
"size": 22025643,
"upload_time": "2024-12-09T11:12:35",
"upload_time_iso_8601": "2024-12-09T11:12:35.544533Z",
"url": "https://files.pythonhosted.org/packages/e9/e9/6acb98d30633b04bb4ab522154d7491c04e4e21eedb8ba6270672a5074fa/docling_parse-3.0.0-cp311-cp311-macosx_13_0_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1815ac79595f38f743bbf501a4911f4c196d0c95c8c5ab773e2393c20742e41f",
"md5": "e99dfb7b45f1ec227c7a59992496acf3",
"sha256": "25da7fa46449386956906f04cad5e9bec87816c00146caaef1112c8cdda6b79c"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp311-cp311-macosx_14_0_arm64.whl",
"has_sig": false,
"md5_digest": "e99dfb7b45f1ec227c7a59992496acf3",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": "<4.0,>=3.9",
"size": 21910337,
"upload_time": "2024-12-09T11:12:38",
"upload_time_iso_8601": "2024-12-09T11:12:38.000341Z",
"url": "https://files.pythonhosted.org/packages/18/15/ac79595f38f743bbf501a4911f4c196d0c95c8c5ab773e2393c20742e41f/docling_parse-3.0.0-cp311-cp311-macosx_14_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e1798bfd1de8db8fecd8b45cbc13e5d6d4d6e8bb1eec173d1cdca725b28d1aa3",
"md5": "81c39135b72f60bb42dcb4e544eb30bd",
"sha256": "787c200081af2fb2d267d8f404a1b57464ee2fbcda4abd8d7bab99244c1716cb"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "81c39135b72f60bb42dcb4e544eb30bd",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": "<4.0,>=3.9",
"size": 22351347,
"upload_time": "2024-12-09T11:12:40",
"upload_time_iso_8601": "2024-12-09T11:12:40.437133Z",
"url": "https://files.pythonhosted.org/packages/e1/79/8bfd1de8db8fecd8b45cbc13e5d6d4d6e8bb1eec173d1cdca725b28d1aa3/docling_parse-3.0.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "34428e513f48b7a91f824abe3c7744f3ab86d3be6050363a8d591abd42c2a500",
"md5": "abe685fd6165f6db6cebdba0f3d2456e",
"sha256": "be7a28e7a3ae6e198722dbb29341956c565ab9d8fdbddaee91f81dc21d870dde"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "abe685fd6165f6db6cebdba0f3d2456e",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": "<4.0,>=3.9",
"size": 22417964,
"upload_time": "2024-12-09T11:12:42",
"upload_time_iso_8601": "2024-12-09T11:12:42.828605Z",
"url": "https://files.pythonhosted.org/packages/34/42/8e513f48b7a91f824abe3c7744f3ab86d3be6050363a8d591abd42c2a500/docling_parse-3.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "54c9308f994ad5df170dd7f609f763d374d67618e0228ead8fd8e1a938f35378",
"md5": "efa80ce1d6421521f3f0d6ec357039f5",
"sha256": "4251888da7c0ff946ce77ea8f14a0896ffe24b79422155db5871b7ee1b9fbc0a"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "efa80ce1d6421521f3f0d6ec357039f5",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": "<4.0,>=3.9",
"size": 23216577,
"upload_time": "2024-12-09T11:12:45",
"upload_time_iso_8601": "2024-12-09T11:12:45.727397Z",
"url": "https://files.pythonhosted.org/packages/54/c9/308f994ad5df170dd7f609f763d374d67618e0228ead8fd8e1a938f35378/docling_parse-3.0.0-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6bc3cadfde769f9db1bb81eefceaa47238791ab19d1a27cff72d5c5226010e64",
"md5": "49046554042392e68b65dc63e8b2903a",
"sha256": "642e47bdf090b89766e035b74cc849abffe0df520f2907ff4dede5c819b31d4a"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp312-cp312-macosx_13_0_x86_64.whl",
"has_sig": false,
"md5_digest": "49046554042392e68b65dc63e8b2903a",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "<4.0,>=3.9",
"size": 22025947,
"upload_time": "2024-12-09T11:12:48",
"upload_time_iso_8601": "2024-12-09T11:12:48.973927Z",
"url": "https://files.pythonhosted.org/packages/6b/c3/cadfde769f9db1bb81eefceaa47238791ab19d1a27cff72d5c5226010e64/docling_parse-3.0.0-cp312-cp312-macosx_13_0_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "78e7009e2fc15e9c3b5888ccfc50458b0e814890aea5934a84f1da1a2243de6b",
"md5": "6c968142a463d2e26991e850b87b8bba",
"sha256": "731de22e279af1505f962dc10102b6405bcaac3d855657bf3542048e7182b440"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp312-cp312-macosx_14_0_arm64.whl",
"has_sig": false,
"md5_digest": "6c968142a463d2e26991e850b87b8bba",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "<4.0,>=3.9",
"size": 21909782,
"upload_time": "2024-12-09T11:12:51",
"upload_time_iso_8601": "2024-12-09T11:12:51.839277Z",
"url": "https://files.pythonhosted.org/packages/78/e7/009e2fc15e9c3b5888ccfc50458b0e814890aea5934a84f1da1a2243de6b/docling_parse-3.0.0-cp312-cp312-macosx_14_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e29884987768c8a4d3c060873f0f3822723c44123877c3fd2d413e0a009bd0c1",
"md5": "08a4bbcbdd104a6c0f65199aa2cde8d1",
"sha256": "afd553a715e6282fc5aadd3bfd402faab4e43b77f4952bd065e3941218118f39"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "08a4bbcbdd104a6c0f65199aa2cde8d1",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "<4.0,>=3.9",
"size": 22350717,
"upload_time": "2024-12-09T11:12:55",
"upload_time_iso_8601": "2024-12-09T11:12:55.326781Z",
"url": "https://files.pythonhosted.org/packages/e2/98/84987768c8a4d3c060873f0f3822723c44123877c3fd2d413e0a009bd0c1/docling_parse-3.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7fefb473b9900b5749013d41071ea10320ce4d1c3fa46329435c864df66ca6b8",
"md5": "51794c4b2c4e2a6af15cac0bb38d10bc",
"sha256": "6cfb02830a918958a47144ca13ce985f09578a353c97da941935591e8917f432"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "51794c4b2c4e2a6af15cac0bb38d10bc",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "<4.0,>=3.9",
"size": 22417413,
"upload_time": "2024-12-09T11:12:59",
"upload_time_iso_8601": "2024-12-09T11:12:59.154308Z",
"url": "https://files.pythonhosted.org/packages/7f/ef/b473b9900b5749013d41071ea10320ce4d1c3fa46329435c864df66ca6b8/docling_parse-3.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c379449ef8095543cd43da20af7b425ae7712f586174e5e990eccf9f760a8357",
"md5": "5b76529503a1d1f163f9fb3d8165811d",
"sha256": "85ca7610e5debcfc37e7b6311f4fc7c62c9d0eeea11b8bf2b33a760e65dd64fe"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "5b76529503a1d1f163f9fb3d8165811d",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "<4.0,>=3.9",
"size": 23217163,
"upload_time": "2024-12-09T11:13:02",
"upload_time_iso_8601": "2024-12-09T11:13:02.285203Z",
"url": "https://files.pythonhosted.org/packages/c3/79/449ef8095543cd43da20af7b425ae7712f586174e5e990eccf9f760a8357/docling_parse-3.0.0-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "83515b2fe10baedc5755b66ad17a0476235d5370c3fe17c79930d2b3d6caa5f8",
"md5": "7c189ffafe18e4862e6892798a429fe4",
"sha256": "9171180b509a41856d1e32e1486934eaf1460575a5d86fa3a8941cb01e2955ac"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp313-cp313-macosx_13_0_x86_64.whl",
"has_sig": false,
"md5_digest": "7c189ffafe18e4862e6892798a429fe4",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": "<4.0,>=3.9",
"size": 22026106,
"upload_time": "2024-12-09T11:13:05",
"upload_time_iso_8601": "2024-12-09T11:13:05.462178Z",
"url": "https://files.pythonhosted.org/packages/83/51/5b2fe10baedc5755b66ad17a0476235d5370c3fe17c79930d2b3d6caa5f8/docling_parse-3.0.0-cp313-cp313-macosx_13_0_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c32a75bc956503d4bd3346010317334a778543eeccca64c6a1cf6d0627144803",
"md5": "ea94f0191bbb08445256ae13ec441aa4",
"sha256": "12c5fbeb41f491b75d77e055304fc931b723d28fab29e4c4cb2a113201a86918"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp313-cp313-macosx_14_0_arm64.whl",
"has_sig": false,
"md5_digest": "ea94f0191bbb08445256ae13ec441aa4",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": "<4.0,>=3.9",
"size": 21909763,
"upload_time": "2024-12-09T11:13:07",
"upload_time_iso_8601": "2024-12-09T11:13:07.869462Z",
"url": "https://files.pythonhosted.org/packages/c3/2a/75bc956503d4bd3346010317334a778543eeccca64c6a1cf6d0627144803/docling_parse-3.0.0-cp313-cp313-macosx_14_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6015e08dc34d3b650f639ac1b905029f5233b07c665e6948dec35359ad5002b8",
"md5": "573f94f1997b8c36b3d4bad58dafd12e",
"sha256": "83744522c1994ef2fe888865876515e28627ddfce396a119db3cb196a1a99a75"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "573f94f1997b8c36b3d4bad58dafd12e",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": "<4.0,>=3.9",
"size": 22351523,
"upload_time": "2024-12-09T11:13:10",
"upload_time_iso_8601": "2024-12-09T11:13:10.513782Z",
"url": "https://files.pythonhosted.org/packages/60/15/e08dc34d3b650f639ac1b905029f5233b07c665e6948dec35359ad5002b8/docling_parse-3.0.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2f5835c66e2246f47e9a4c486286598ad4f5e04f23b88686f32754aa8882002a",
"md5": "a1af743b71c9928abb6d6d877307439f",
"sha256": "9857d8982bb7a7b51e7cefdd01613a7979e66c9c3ed40ea151e979b0fc2fc5e3"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "a1af743b71c9928abb6d6d877307439f",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": "<4.0,>=3.9",
"size": 22418183,
"upload_time": "2024-12-09T11:13:12",
"upload_time_iso_8601": "2024-12-09T11:13:12.825775Z",
"url": "https://files.pythonhosted.org/packages/2f/58/35c66e2246f47e9a4c486286598ad4f5e04f23b88686f32754aa8882002a/docling_parse-3.0.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8bcdbae6a0fbf883cb51e9ce10439ad80ac442f5ef957da6f39529e847cb2451",
"md5": "ff8a5ab13edcc976c55814a4a10bd55e",
"sha256": "1ff51e5153d164b957bf6284987d805ff1b43559a0244265d1788c0034cb899a"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp313-cp313-win_amd64.whl",
"has_sig": false,
"md5_digest": "ff8a5ab13edcc976c55814a4a10bd55e",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": "<4.0,>=3.9",
"size": 23216489,
"upload_time": "2024-12-09T11:13:15",
"upload_time_iso_8601": "2024-12-09T11:13:15.910101Z",
"url": "https://files.pythonhosted.org/packages/8b/cd/bae6a0fbf883cb51e9ce10439ad80ac442f5ef957da6f39529e847cb2451/docling_parse-3.0.0-cp313-cp313-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "26554c84457b841dc83af4c043d52b1656144b09e10d7d3d308f690ec8233869",
"md5": "8d6da29efbc0189ad1afc2d52fbdc480",
"sha256": "a15efbef123b100a58425fa7073121e7bf0cb8433814bac200df416c4eb9e599"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp39-cp39-macosx_13_0_x86_64.whl",
"has_sig": false,
"md5_digest": "8d6da29efbc0189ad1afc2d52fbdc480",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": "<4.0,>=3.9",
"size": 22023802,
"upload_time": "2024-12-09T11:13:19",
"upload_time_iso_8601": "2024-12-09T11:13:19.022584Z",
"url": "https://files.pythonhosted.org/packages/26/55/4c84457b841dc83af4c043d52b1656144b09e10d7d3d308f690ec8233869/docling_parse-3.0.0-cp39-cp39-macosx_13_0_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e29f9a1f9885d67dd9f5f4c3c63e7405254a7d1431cd03f85b12602fd7906b82",
"md5": "7d1d08df4bb6e6eda8dc7ef333a8db36",
"sha256": "1155d6ca8310e046e18c6a6dc7b7f57e0ed6c89791d3757db2a039f7f69694a6"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp39-cp39-macosx_14_0_arm64.whl",
"has_sig": false,
"md5_digest": "7d1d08df4bb6e6eda8dc7ef333a8db36",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": "<4.0,>=3.9",
"size": 21909124,
"upload_time": "2024-12-09T11:13:21",
"upload_time_iso_8601": "2024-12-09T11:13:21.313392Z",
"url": "https://files.pythonhosted.org/packages/e2/9f/9a1f9885d67dd9f5f4c3c63e7405254a7d1431cd03f85b12602fd7906b82/docling_parse-3.0.0-cp39-cp39-macosx_14_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c765e8fb6f3d195789778b538475cdff3a9221c0da6253248c00949042bf44eb",
"md5": "815a43445059d61c57aa0e914ee45c25",
"sha256": "159c12370d6dfbe3e572f43a6a2804ee81d7f073d0bd7e5ca08d9acd1876aa83"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "815a43445059d61c57aa0e914ee45c25",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": "<4.0,>=3.9",
"size": 22351249,
"upload_time": "2024-12-09T11:13:24",
"upload_time_iso_8601": "2024-12-09T11:13:24.206703Z",
"url": "https://files.pythonhosted.org/packages/c7/65/e8fb6f3d195789778b538475cdff3a9221c0da6253248c00949042bf44eb/docling_parse-3.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "67be54e8192e5bda13e765ff37f5fd050555c6ce942820c85d77fa9f748be5d5",
"md5": "0b1297d4d4ee5040cbabe4c0b7a0a739",
"sha256": "351f4d718485f44686d41d04b26867a429898dbb6ccfe43454adaae3a434d919"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "0b1297d4d4ee5040cbabe4c0b7a0a739",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": "<4.0,>=3.9",
"size": 22417119,
"upload_time": "2024-12-09T11:13:27",
"upload_time_iso_8601": "2024-12-09T11:13:27.566747Z",
"url": "https://files.pythonhosted.org/packages/67/be/54e8192e5bda13e765ff37f5fd050555c6ce942820c85d77fa9f748be5d5/docling_parse-3.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6f145ce157307c6c41a3fce4e7729610ec61f932484ad647659da31f9016f917",
"md5": "6f0fc28df32597ef33ae7d528ced7a02",
"sha256": "9172c98615c85303a231b800dfb2e4c1e539b04e383dfc5d7f0dc5f708ea50fd"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-cp39-cp39-win_amd64.whl",
"has_sig": false,
"md5_digest": "6f0fc28df32597ef33ae7d528ced7a02",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": "<4.0,>=3.9",
"size": 23215498,
"upload_time": "2024-12-09T11:13:30",
"upload_time_iso_8601": "2024-12-09T11:13:30.209392Z",
"url": "https://files.pythonhosted.org/packages/6f/14/5ce157307c6c41a3fce4e7729610ec61f932484ad647659da31f9016f917/docling_parse-3.0.0-cp39-cp39-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0be2160f43afc3742ca5ac8122d5f36630ce47afb4ad42f5a490fb0ee0ac5c0c",
"md5": "ddbd4a72fc2bedb52879875324f0e63a",
"sha256": "1ba1c3469a38b404123bb615e220c046496d5d47e161cc5af7ae749e8cf181ab"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-pp310-pypy310_pp73-win_amd64.whl",
"has_sig": false,
"md5_digest": "ddbd4a72fc2bedb52879875324f0e63a",
"packagetype": "bdist_wheel",
"python_version": "pp310",
"requires_python": "<4.0,>=3.9",
"size": 24989806,
"upload_time": "2024-12-09T11:13:32",
"upload_time_iso_8601": "2024-12-09T11:13:32.729875Z",
"url": "https://files.pythonhosted.org/packages/0b/e2/160f43afc3742ca5ac8122d5f36630ce47afb4ad42f5a490fb0ee0ac5c0c/docling_parse-3.0.0-pp310-pypy310_pp73-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0f41bcfb1d7b46e19f773e2abcd6674f187cf92db76c5314239d02c9f165bd79",
"md5": "4a9f7cb63d886dd9f5cb6fa2d7ef3fb9",
"sha256": "eb315b0af70757f2cba654b1629272ccb35a1a416facf552ff72fd89abe98967"
},
"downloads": -1,
"filename": "docling_parse-3.0.0-pp39-pypy39_pp73-win_amd64.whl",
"has_sig": false,
"md5_digest": "4a9f7cb63d886dd9f5cb6fa2d7ef3fb9",
"packagetype": "bdist_wheel",
"python_version": "pp39",
"requires_python": "<4.0,>=3.9",
"size": 24990406,
"upload_time": "2024-12-09T11:13:35",
"upload_time_iso_8601": "2024-12-09T11:13:35.391177Z",
"url": "https://files.pythonhosted.org/packages/0f/41/bcfb1d7b46e19f773e2abcd6674f187cf92db76c5314239d02c9f165bd79/docling_parse-3.0.0-pp39-pypy39_pp73-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4400470cb9e2eaea562b7a7c8d61f70cee22eecfe1cc3a02848cead9ded95048",
"md5": "dcb83922e0033aa67092937a8ec12359",
"sha256": "62a50d0fc4bb437ba840fb0419a466361d93071f300ae5f0cebe9b842ef0c8d4"
},
"downloads": -1,
"filename": "docling_parse-3.0.0.tar.gz",
"has_sig": false,
"md5_digest": "dcb83922e0033aa67092937a8ec12359",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.9",
"size": 34665630,
"upload_time": "2024-12-09T11:13:42",
"upload_time_iso_8601": "2024-12-09T11:13:42.345985Z",
"url": "https://files.pythonhosted.org/packages/44/00/470cb9e2eaea562b7a7c8d61f70cee22eecfe1cc3a02848cead9ded95048/docling_parse-3.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-09 11:13:42",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "DS4SD",
"github_project": "docling-parse",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "docling-parse"
}