11 / 11 / 1
Регистрация: 19.03.2020
Сообщений: 26
1

Простая документация в дорогу

19.03.2020, 19:28. Показов 11821. Ответов 4
Метки нет (Все метки)

Константин уезжает на каникулы к бабушке в деревню, Интернет там не работает. Однако в свободное время он хотел почитать документацию на некоторые библиотеки Python. Проблема в том, что документация к библиотекам написана в формате Markdown (https://ru.wikipedia.org/wiki/Markdown) и в обычном офисном пакете не открывается нормально.

Помогите Константину и напишите функцию markdown_to_docx(text), которая принимает текст, содержащий на первой строке название документа, а потом – несколько строк с содержимым документа в формате Markdown, создаёт документ и сохраняет его в файле res.docx.

В этот раз нам немного повезло, и документация может содержать только следующие элементы:

заголовки уровней 1-6;
одноуровневые (то есть не содержащие вложенных) нумерованные и ненумерованные списки;
абзацы обычного, наклонного, жирного и наклонно-жирного текста. Стиль распространяется на весь абзац. Вложенного оформления не бывает.
На пустые строки Markdown создаются пустые строки в документе.

Формат ввода
Строка с названием документа, а затем его содержание на нескольких строках в формате Markdown в параметре text.

Формат вывода
Сохранённый на диске в директории с программой файл res.docx со сконвертированным содержимым.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.03.2020, 19:28
Ответы с готовыми решениями:

Документация в дорогу
Константин снова уезжает на каникулы и хочет взять с собой документацию. Только в этот раз...

Простая казалось бы задача. Двое друзей пошли в магазин. Но дорогу знает только один
Привет На первый взгляд детская задача. Двое друзей пошли в магазин. Но дорогу знает только...

Простая авторизация на php и mysql, очень простая!
В базе данных таблица с двумя строками: id, user, password. На странице есть два поля для ввода...

Новичок! Советы в дорогу!
Доброго времени суток дорогие друзья. Стою на старте! Есть желание изучить java... Поэтому и...

4
0 / 0 / 0
Регистрация: 10.01.2020
Сообщений: 11
22.03.2020, 19:23 2
Примет или "руками" парсить?
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import pypandoc
 
 
def markdown_to_docx(text):
    output = pypandoc.convert_text(text, 'docx', format='md', outputfile="res.docx")
 
# проверка
markdown_to_docx('''## Краткое руководство
 
Абзацы создаются при помощи пустой строки. Если вокруг текста сверху и снизу есть пустые строки, то текст превращается в абзац.
 
Чтобы сделать перенос строки вместо абзаца,  
нужно поставить два пробела в конце предыдущей строки.
 
Заголовки отмечаются диезом `#` в начале строки, от одного до шести. Например:
 
# Заголовок первого уровня #
## Заголовок h2
### Заголовок h3
#### Заголовок h4
##### Заголовок h5
###### Заголовок h6
 
- элемент 1
- элемент 2
 
1. элемент 1
2. элемент 2
''')
0
0 / 0 / 0
Регистрация: 29.11.2019
Сообщений: 27
23.03.2020, 18:16 3
придёться руками писать
0
Просто Лис
Эксперт Python
4909 / 3221 / 1004
Регистрация: 17.05.2012
Сообщений: 9,446
Записей в блоге: 9
24.03.2020, 05:46 4
Цитата Сообщение от JekaSCyb Посмотреть сообщение
Примет или "руками" парсить?
Скажет ImportError: No module named 'pypandoc'
0
0 / 0 / 0
Регистрация: 10.01.2020
Сообщений: 11
24.03.2020, 21:06 5
Да. Система не принимает использование модуля pypandoc.
В ручном алгоритме упёрся в парсинг абзацев между двумя пустыми строками. Может регулярками можно вычленить отпарсить markdown?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.03.2020, 21:06
Помогаю со студенческими работами здесь

Кому перешел дорогу Плутон?
Плутон самая дальняя из всех планет. Большая полуось его орбиты составляет величину порядка 6...

Как в Canvas создать дорогу
Подскажите пож-та , как в Canvas создать трассу дороги с помощью polyline, указав начало дороги в...

Сколько времени на дорогу из школы до станции,
Вот условия : 1) Сколько времени в минутах затратит школьник на дорогу из школы до станции, если...

Задача про джип бензин и дорогу
Всем привет, требуется помощь в решении задачи, мне нужна хотя бы идея как её сделать Вот текст...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru