from docx import Document from docx.shared import...

Créé le : 12 août 2025

Répondu en utilisant GPT-5 Thinking par Chat01

Question

from docx import Document
from docx.shared import RGBColor
import datetime

Создаем документ

doc = Document()
doc.add_heading('Контент-план гончарной мастерской (01.09.2025 - 01.09.2026)', level=1)

Даты и цвета

colors = {
'Понедельник': RGBColor(0, 0, 255), # Синий
'Вторник': RGBColor(0, 128, 0), # Зеленый
'Среда': RGBColor(255, 215, 0), # Желтый
'Четверг': RGBColor(128, 0, 128), # Фиолетовый
'Пятница': RGBColor(255, 165, 0), # Оранжевый
'Суббота': RGBColor(255, 0, 0), # Красный
'Воскресенье': RGBColor(128, 128, 128) # Серый
}

Контент по дням недели

content_plan = {
'Понедельник': 'Истории с приглашением на мастер-классы',
'Вторник': 'Истории из жизни мастерской',
'Среда': 'Керамика: До & После',
'Четверг': 'Полезная статья / Интервью',
'Пятница': 'Рилсы',
'Суббота': 'Фото/видео с мастер-классов',
'Воскресенье': 'Перепост UGC / Отдых'
}

Создаем таблицу

table = doc.add_table(rows=1, cols=7)
hdr_cells = table.rows[0].cells
hdr_cells[0].text = 'Дата'
hdr_cells[1].text = 'День недели'
hdr_cells[2].text = 'ВКонтакте'
hdr_cells[3].text = 'Instagram'
hdr_cells[4].text = 'Telegram'
hdr_cells[5].text = 'Сайт'
hdr_cells[6].text = 'Ссылка на облако'

Заполняем таблицу

start_date = datetime.date(2025, 9, 1)
end_date = datetime.date(2026, 9, 1)
delta = datetime.timedelta(days=1)

current_date = start_date
while current_date <= end_date:
row_cells = table.add_row().cells
row_cells[0].text = current_date.strftime('%d.%m.%Y')
weekday_name = current_date.strftime('%A')

text
# Переводим на русский weekdays_map = { 'Monday': 'Понедельник', 'Tuesday': 'Вторник', 'Wednesday': 'Среда', 'Thursday': 'Четверг', 'Friday': 'Пятница', 'Saturday': 'Суббота', 'Sunday': 'Воскресенье' } weekday_rus = weekdays_map[weekday_name] # День недели с цветом p = row_cells[1].paragraphs[0] run = p.add_run(weekday_rus) run.font.color.rgb = colors[weekday_rus] # Контент content = content_plan[weekday_rus] row_cells[2].text = content row_cells[3].text = content row_cells[4].text = content row_cells[5].text = '-' if weekday_rus not in ['Понедельник'] else 'Анонс на сайте' row_cells[6].text = '-' if weekday_rus not in ['Понедельник'] else 'Ссылка на облако' current_date += delta

Сохраняем документ

file_path = '/mnt/data/content_plan.docx'
doc.save(file_path)

file_path

Réflexion

Executing user code

The user provided a Python snippet that creates a .docx file with a content plan in Russian from 01.09.2025 to 01.09.2026. I’ll try executing it using an environment set up for Python. It uses the python-docx library, which might be available. I need to pay attention to the weekday names being in English.

Executing docx code

The user’s code should generate a document with 367 rows for each day from 01.09.2025 to 01.09.2026, including headers. I’m wondering if the environment has python-docx installed—it's usually available. If errors arise, I can handle them. Also, the color code ("Желтый") looks fine, and the

Thought for 8s

Réponse

Готово! Ваш документ создан.
Скачать документ

Хотите, чтобы добавила автофильтры, границы таблицы или отдельные шаблоны постов для каждого типа контента?

Partager cette Q&R