-
Notifications
You must be signed in to change notification settings - Fork 19
users_guide_rus
IlyaKozlov edited this page Dec 8, 2020
·
1 revision
Дедок читает документы в различных форматах (doc, docx, odt, csv, и других) и извлекает из них
- Метаинформацию
- Текст документа + то как текст написан (жирность, курсив, размер шрифта)
- Логическую структуру (опционально).
Дедок предпочитает чтобы с ним общались через rest-api, но может работать и через python.
Дедок можно запустить в контейнере так и без него.
- Убедитесь что у вас установлен docker
- Скачайте проект
git clone https://gitlab.at.ispras.ru/Ilya/dedoc_project.git
cd dedoc_project/
- Соберите контейнер и запустите.
docker build . -t dedoc_container
docker run -p 1231:1231 --rm dedoc_container:latest python3.5 /dedoc/main.py
После запуска можно проверить что Дедок запустился. Для этого можно открыть localhost:1231 и прочитать онлайн-документацию. Если Дедок запущен, то формат возвращаемых данных можно посмотреть тут.
Мы тестировали Дедок на ubuntu 18 и python3.5. Проще всего будет посмотреть Dockerfile и установить аналогичным образом.
Мы запустили dedoc и хотим проверить, что он работает. Для этого
- перейдите http://localhost:1231
- Нажмите Supported Formats (внизу страницы)
- Нажмите на любой result in html
- Должен прийти результат, похожий на такой:
Приведём пример с python + requests.
import json
import os
import requests
"""specify file name and directory"""
directory_path = "..."
file_name = "..."
file_path = os.path.join(directory_path, file_name)
with open(file_path, 'rb') as file:
files = {'file': (file_name, file)}
"""put additional parameter to data dict, you may look to the online docs for additional parameters"""
data = {}
"""send request and get response"""
response = requests.post("http://localhost:1231/upload", files=files, data=data)
"""Check if everything is OK"""
if response.status_code != 200:
raise Exception("Fail to parse file {}".format(response.status_code))
"""parse result from json """
result = json.loads(response.content.decode())