Генератор отчетов на Python с использованием библиотеки docx для работы с word-файлами и запросов к сервису

Overview

Генератор отчетов

Структура

Для генерации отчетов необходимо разместить файлы report_generator.py,balaboba_request.py,config.json в одной директории с папками проектов, на основе которых будут генерироваться отчеты.

В report_generator.py определены константы TITUL_PAGE, OUTPUT_PAGE, CONFIG_JSON, указывающие файл титульника, выходного документа и конфигурационный файл.

Конфигурационный файл config.json структурирован следующим образом:

{
    "tasks" : [
        {
            "folder" : "Папка_проекта_1",
            "include" : ["Название_файла_1", "Название_файла_2"],
            "topic" : "Тема проекта_1",
            "problem_statement" : "Постановка задачи" 
        },
        ...
        {
            "folder" : "Папка_проекта_2",
            "include" : ["Название_файла_1", "Название_файла_2"],
            "topic" : "Тема проекта_2",
            "problem_statement" : "Постановка задачи" 
        }
}

Пример заполнения конфигурации

Например, если есть следующий каталог:

  • RecursionJava
    • Task1
      • Fibonacci.java
      • Factorial.java
    • Task2
      • MaxMin.java
      • OddNums.java
  • ContainersJava
    • Arrays
      • TestArrayList.java
      • TestArray.java
    • Lists
      • TestLinkedList.java
      • TestDoubleLikedList.java

И мы хотим составить отчет по двум проектам, то конфигурационный файл можно заполнить следующим образом:

{
    "tasks" : [
        {
            "folder" : "RecursionJava",
            "include" : ["Fibonacci", "MaxMin"],
            "topic" : "Рекурсия в Java",
            "problem_statement" : "Решить задачи с использованием рекурсии в Java" 
        },
        ...
        {
            "folder" : "ContainersJava",
            "include" : ["TestArrayList", "TestDoubleLikedList", "TestLinkedList"],
            "topic" : "Контейнеры в Java",
            "problem_statement" : "Изучить и протестировать контейнеры в Java" 
        }
}

Пример сгенерированного отчета

image

Owner
Semyon Esaev
Semyon Esaev
Semyon Esaev
Make your Discord Account Online 24/7!

Online-Forever Make your Discord Account Online 24/7! A Code written in Python that helps you to keep your account 24/7. The main.py is the main file.

SealedSaucer 0 Mar 16, 2022
Test for using pyIIIFpres for rara magnetica project

raramagnetica_pyIIIFpres Test for using pyIIIFpres for rara magnetica project. This test show how to use pyIIIFpres for creating mannifest compliant t

Giacomo Marchioro 1 Dec 03, 2021
This repository can help you made a PocketMine-MP Server with Termux apps!

Hello This GitHub repository can made you a Server PocketMine-MP On development! How to Install Open Termux Type "pkg install git && python" If python

1 Mar 04, 2022
Python package for handling and analyzing PSRFITS files

PyPulse A pure-Python package for handling and analyzing PSRFITS files. Read the documentation here. This is an alternate code base from PSRCHIVE. Req

Michael Lam 15 Nov 30, 2022
A collection of common regular expressions bundled with an easy to use interface.

CommonRegex Find all times, dates, links, phone numbers, emails, ip addresses, prices, hex colors, and credit card numbers in a string. We did the har

Madison May 1.5k Dec 31, 2022
Parser for air tickets' price

Air-ticket-price-parser Parser for air tickets' price How to Install Firefox If geckodriver.exe is not compatible with your Firefox version, download

Situ Xuannn 1 Dec 13, 2021
Sigma coding youtube - This is a collection of all the code that can be found on my YouTube channel Sigma Coding.

Sigma Coding Tutorials & Resources YouTube • Facebook Support Sigma Coding Patreon • GitHub Sponsor • Shop Amazon Table of Contents Overview Topics Re

Alex Reed 927 Jan 08, 2023
Delayed iteration for polling and retries.

Does Python need yet another retry / poll library? It needs at least one that isn't coupled to decorators and functions. Decorators prevent the caller

A. Coady 22 Dec 29, 2022
This repo contains scripts that add functionality to xbar.

xbar-custom-plugins This repo contains scripts that add functionality to xbar. Usage You have to add scripts to xbar plugin folder. If you don't find

osman uygar 1 Jan 10, 2022
Test to grab m3u from YouTube live.

YouTube_to_m3u https://raw.githubusercontent.com/benmoose39/YouTube_to_m3u/main/youtube.m3u Updated m3u links of YouTube live channels, auto-updated e

136 Jan 06, 2023
XHacks 2021 Startup Track Winner: Be Heard. Educate, Enact, Empower. No voice left behind. (backend)

Be Heard: X Hacks 2021 Submission Educate, Enact, Empower. No voice left behind. Inspiration To say 2020 was an eventful year would be an understateme

3 Jul 14, 2022
Demodulate and error correct FIS-B and ADS-B signals on 978 MHz.

FIS-B 978 ('fisb-978') is a set of programs that demodulates and error corrects FIS-B (Flight Information System - Broadcast) and ADS-B (Automatic Dep

2 Nov 15, 2022
A python package for batch import of resume attachments to be parsed in HrFlow.

HrFlow Importer Description A python package for batch import of resume attachments to be parsed in HrFlow. hrflow-importer is an open-source project

HrFlow.ai (ex: Riminder.net) 3 Nov 15, 2022
Python Script to add OpenGapps, Magisk, libhoudini translation library and libndk translation library to waydroid !

Waydroid Extras Script Script to add gapps and other stuff to waydroid ! Installation/Usage "lzip" is required for this script to work, install it usi

Casu Al Snek 331 Jan 02, 2023
SiliconCompiler is an open source compiler framework that automates translation from source code to silicon.

SiliconCompiler is an open source compiler framework that aims to automate translation from source code to silicon.

siliconcompiler 539 Jan 04, 2023
This is the core of the program which takes 5k SYMBOLS and looks back N years to pull in the daily OHLC data of those symbols and saves them to disc.

This is the core of the program which takes 5k SYMBOLS and looks back N years to pull in the daily OHLC data of those symbols and saves them to disc.

Daniel Caine 1 Jan 31, 2022
Scrapper For Paste.pics

PrntScScrapper Scrapper for Paste.pics If you are bored you can find some random screenshots from prnt.sc Features Saving screenshots Open in Browser

Fareusz 1 Dec 29, 2021
Battle-Ship - Python-console battle ship

Battle-Ship this SHOULD work in lenux(if i spelled it wrong spam issues till I fix it) the thing that maby wont work is where it clears the screen the

pl608 2 Jan 06, 2022
Hopefully it'll become a very annoying desktop pet

AnnoyingPet Basic Tutorial: https://seebass22.github.io/python-desktop-pet-tutorial/ Handling Mouse Input: https://pythonhosted.org/pynput/mouse.html

1 Jun 08, 2022
Example applications, dashboards, scripts, notebooks, and other utilities built using Polygon.io

Polygon.io Examples Example applications, dashboards, scripts, notebooks, and other utilities built using Polygon.io. Examples Preview Name Type Langu

Tim Paine 4 Jun 01, 2022