A python script that fetches the grades of a student from a WAEC result in pdf format.

Overview

About waec-result-analyzer

A python script that fetches the grades of a student from a WAEC result in pdf format. Built for federal government college, Warri, Delta State.

A typical WAEC (West African Examination Council) result contains the Candidate Information and Subject Grades. This script is focused on the Subject Grades section.

Expected Data

This following data are what the school expects from a WAEC result.

POSSIBLE GRADES

'A1', 'B2', 'B3', 'C4', 'C5', 'C6', 'D7', 'E8', 'F9', 'OUTSTANDING', 'HELD', 'ABSENT'

SUBJECTS OFFERED BY ALL STUDENTS

'MATHEMATICS', 'FURTHER MATHEMATICS', 'ENGLISH LANGUAGE', 'LITERATURE IN ENGLISH',
'PHYSICS', 'BIOLOGY', 'CHEMISTRY', 'ECONOMICS', 'CIVIC EDUCATION', 'COMPUTER STUDIES', 'PHYSICAL EDUCATION',
'GEOGRAPHY', 'FINANCIAL ACCOUNTING', 'GOVERNMENT', 'DATA PROCESSING', 'CHRISTIAN RELIGIOUS STUDIES',
'OFFICE PRACTICE', 'TECHNICAL DRAWING', 'VISUAL ART', 'FRENCH', 'GARMENT MAKING', 'ISLAMIC RELIGIOUS STUDIES',
'HISTORY', 'COMMERCE', 'BASIC ELECTRONICS', 'ELECTRICAL INSTALLATION AND MAINTENANCE WORKS', 'AUTO MECHANICS',
'MARKETING', 'FOODS & NUTRITION'

Libraries

The library used in reading the PDF is pdfplumber

pip install pdfplumber

Necessity

The reason for building this project is that the method in which the result analysis is being carried out is of manual paper work. All the results (400+) are printed and checked manually by workers which is really tedious and tiring.

So this project aims to reduce if not eliminate manual labour and save time. The analysis is done so to know the number of students with an exact grade for all subjects.

For instance, below shows the analysis of mathematics. You can imagine processing all the grades for all subjects.

MATHEMATICS
A1 - 20, B2 - 34, B3 - 16, C4 - 7, C5 - 4, C6 - 8, D7 - 10, E8 - 1, F9 - 2, HELD - 3, ABSENT - 0

TOTAL PASSED - 89/105 * 100 = 85%
TOTAL FAILED - 16/105 * 100 = 15%

Contributing

Pull requests are very much welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

MIT

Owner
Oshodi Kolapo
Tech geek, through and through.
Oshodi Kolapo
A supercharged version of paperless: scan, index and archive all your physical documents

Paperless-ng Paperless (click me) is an application by Daniel Quinn and contributors that indexes your scanned documents and allows you to easily sear

Jonas Winkler 5.3k Jan 09, 2023
This is a working model for which I have used python.

Jarvis_voiceAssistance This is a working model for which I have used python. This model can: 1)Play a video or song on youtube. 2)Tell us time. 3)Tell

Hardik Jain 1 Jan 30, 2022
Paxos in Python, tested with Jepsen

Python implementation of Multi-Paxos with a stable leader and reconfiguration, roughly following "Paxos Made Moderately Complex". Run python3 paxos/st

A. Jesse Jiryu Davis 25 Dec 15, 2022
Framework for creating efficient data processing pipelines

Aqueduct Framework for creating efficient data processing pipelines. Contact Feel free to ask questions in telegram t.me/avito-ml Key Features Increas

avito.tech 137 Dec 29, 2022
A compiler for ARM, X86, MSP430, xtensa and more implemented in pure Python

Introduction The PPCI (Pure Python Compiler Infrastructure) project is a compiler written entirely in the Python programming language. It contains fro

Windel Bouwman 277 Dec 26, 2022
Scripts for hosting urbit in production-ish

Urbit Sysops Contains some helpful scripts for hosting Urbit. There are two variants included in this repo: one using docker, and one using plain syst

Jōshin 12 Sep 25, 2022
This app converts an pdf file into the audio file.

PDF-to-Audio This app takes an pdf as an input and convert it into audio, and the library text-to-speech starts speaking the preffered page given in t

Ojas Barawal 3 Aug 04, 2021
Skip spotify ads by automatically restarting application when ad comes

SpotiByeAds No one likes interruptions! Don't you hate it when you're listening to your favorite jazz track or your EDM playlist and an ad for Old Spi

Partho 287 Dec 29, 2022
A Python library to simulate a Zoom H6 recorder remote control

H6 A Python library to emulate a Zoom H6 recorder remote control Introduction This library allows you to control your Zoom H6 recorder from your compu

Matias Godoy 68 Nov 02, 2022
Snek-test - An operating system kernel made in python and assembly

pythonOS An operating system kernel made in python and assembly Wait what? It us

TechStudent10 2 Jan 25, 2022
Nesse repositório serão armazenados os conteúdos de aula

Lets_Code_DS_Degree_Alunos Nesse repositório serão armazenados os conteúdos de aula Formato das aulas: Notebook de aula já vem comentado para reduzir

Patricia Bongiovanni Catandi 6 Jan 21, 2022
Python script for changing the SSH banner content with other content

Banner-changer-py Python script for changing the SSH banner content with other content. The Script will take the content of a specified file range and

2 Nov 23, 2021
Find Transposon Element insertions using long reads (nanopore), by alignment directly. (minimap2)

find_te_ins find_te_ins is designed to find Transposon Element (TE) insertions using long reads (nanopore), by alignment directly. (minimap2) Install

Ming Wang 1 Feb 09, 2022
Blender addon, import and update mixamo animation

This is a blender addon for import and update mixamo animations.

ywaby 7 Apr 19, 2022
Discovering local read-level DNA methylation patterns and DNA methylation heterogeneity in intermediately methylated regions

Discovering local read-level DNA methylation patterns and DNA methylation heterogeneity in intermediately methylated regions

1 Jan 11, 2022
A simple Programming Language

R.S.O.C. A custom built programming language About The Project R.S.O.C. is a custom built programming language very similar to a low-level 8085 progra

Ravi Maurya 17 Sep 13, 2022
This is an implementation of PEP 557, Data Classes.

This is an implementation of PEP 557, Data Classes. It is a backport for Python 3.6. Because dataclasses will be included in Python 3.7, any discussio

Eric V. Smith 561 Dec 06, 2022
Data wrangling & common calculations for results from qMem measurement software

qMem Datawrangler This script processes output of qMem measurement software into an Origin ® compatible *.csv files and matplotlib graphs to quickly v

Julian 1 Nov 30, 2021
🍏 Make Thinc faster on macOS by calling into Apple's native Accelerate library

🍏 Make Thinc faster on macOS by calling into Apple's native Accelerate library

Explosion 81 Nov 26, 2022
A Python version of Canvacord

A copy of canvacord made in python! Table of contents Installation Examples Creating Images Links Downloads Installation Run any of these commands in

10 Mar 28, 2022