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
My solution for a MARL problem on a Grid Environment with Q-tables.

To run the project, run: conda create --name env python=3.7 pip install -r requirements.txt python run.py To-do: Add direction to the state space Take

Merve Noyan 12 Dec 25, 2021
Project for viewing the cheapest flight deals from Netherlands to other countries.

Flight_Deals_AMS Project for viewing the cheapest flight deals from Netherlands to other countries.

2 Dec 17, 2022
nbsafety adds a layer of protection to computational notebooks by solving the stale dependency problem when executing cells out-of-order

nbsafety adds a layer of protection to computational notebooks by solving the stale dependency problem when executing cells out-of-order

150 Jan 07, 2023
Check COVID locations of interest against Google location history

Location of Interest Checker Script to compare COVID locations of interest to Google location history. The script produces a map plot (as shown below)

9 Mar 30, 2022
A data engineering project with Kafka, Spark Streaming, dbt, Docker, Airflow, Terraform, GCP and much more!

Streamify A data pipeline with Kafka, Spark Streaming, dbt, Docker, Airflow, Terraform, GCP and much more! Description Objective The project will stre

Ankur Chavda 206 Dec 30, 2022
Rofi script to minimize / unminimize multiple windows in qtile

Qminimize Rofi script to minimize / unminimize multiple windows in qtile Additional requirements : EWMH module fuzzywuzzy module How to use it : - Clo

9 Sep 18, 2022
Python programming language Test

Exercise You are tasked with creating a data-processing app that pre-processes and enriches the data coming from crawlers, with the following requirem

Monirul Islam Khan 1 Dec 13, 2021
Project based on pure python with OOP

Object oriented programming review Object oriented programming (OOP) is among the most used programming paradigms (if not the most common) in the indu

Facundo Abrahan Cerimeli 1 May 09, 2022
Um sistema de llogin feito em uma interface grafica.

Interface-para-login Um sistema de login feito com JSON. Utilizando a biblioteca Tkinter, eu criei um sistema de login, onde guarda a informações de l

Mobben 1 Nov 28, 2021
Control your gtps with gtps-tools!

Note Please give credit to me! Do not try to sell this app, because this app is 100% open source! Do not try to reupload and rename the creator app! S

Jesen N 6 Feb 16, 2022
万能通用对象池,可以池化任意自定义类型的对象。

pip install universal_object_pool 此包能够将一切任意类型的python对象池化,是万能池,适用范围远大于单一用途的mysql连接池 http连接池等。 框架使用对象池包,自带实现了4个对象池。可以直接开箱用这四个对象池,也可以作为例子学习对象池用法。

12 Dec 15, 2022
Repository for my Monika Assistant project

Monika_Assistant Repository for my Monika Assistant project Major changes: Added face tracker Added manual daily log to see how long it takes me to fi

3 Jan 10, 2022
Um Script De Mensagem anonimas Para linux e Termux Feito em python

Um Script De Mensagem anonimas Para linux e Termux Feito em python feito em um celular

6 Sep 09, 2021
Your one and only Discord Bot that helps you concentrate!

Your one and only Discord Bot thats helps you concentrate! Consider leaving a ⭐ if you found the project helpful. concy-bot A bot which constructively

IEEE VIT Student Chapter 22 Sep 27, 2022
Python binding to rust zw-fast-quantile

zw_fast_quantile_py zw-fast-quantile python binding Installation pip install zw_fast_quantile_py Usage import zw_fast_quantile_py

Paul Meng 1 Dec 30, 2021
Tips that improve your life in one way or another

Tips that improve your life in one way or another. This software downloads life tips from reddit.com/r/LifeProTips and tweet the most upvoted tips on Twitter.

Burak Tokman 2 Aug 04, 2022
This is the Code Institute student template for Gitpod.

Welcome AnaG0307, This is the Code Institute student template for Gitpod. We have preinstalled all of the tools you need to get started. It's perfectl

0 Feb 02, 2022
a simple thing that i made for fun :trollface:

we-do-a-little-trolling about a simple thing that i made for fun. requirements and instructions first you need to install obs , then start the virtual

ranon rat 6 Jul 15, 2022
Ontario-Covid-Screening - An automated Covid-19 School Screening Tool for Ontario

Ontario-Covid19-Screening An automated Covid-19 School Screening Tool for Ontari

Rayan K 0 Feb 20, 2022
A check numbers python module

Made with Python3 (C) @FayasNoushad Copyright permission under MIT License License - https://github.com/FayasNoushad/Numbers/blob/main/LICENSE Deplo

Fayas Noushad 3 Nov 28, 2021