GGSIPU Results PDF parser and analyzer
Project description
ggsipu_result
ggsipu_result is a A python module for extraction of results from GGSIPU results pdf. It is capable of:-
- Extraction of Results, Subjects details from pdfs.
- Extract Student's photo from pdfs.
- Dumping the extracted data in JSON format.
Examples
Given code prints top 5 students of 2018 batch:-
from ggsipu_result import iter_pages, has_page_results, iter_results
FILE="Resources/CSE_Result.pdf"
results = []
for page in iter_pages(FILE):
if has_page_results(page):
results = results + [r for r in iter_results(page) if r.batch == 2018]
results.sort(key=lambda x: x.cgpa, reverse=True)
for i, result in enumerate(results[:5]):
print("{i}. {r}".format(i=i+1, r= result))
## PROBABLE OUTPUT
# 1. Result(Sem 1): [41516403218]GAURAV JAIN(2018) [CGPA: 8.92]
# 2. Result(Sem 1): [41016403218]VARDAAN GROVER(2018) [CGPA: 8.77]
# 3. Result(Sem 1): [40316403218]UJJWAL NEGI(2018) [CGPA: 8.73]
# 4. Result(Sem 1): [40116403218]RIGVED ALANKAR(2018) [CGPA: 8.5]
# 5. Result(Sem 1): [01616403218]CHAITANYA GIRI(2018) [CGPA: 8.46]
For more examples please see Sample_Code
folder
Install
pip install ggsipu-result
Tests
ggsipu_result
includes a test suite built on the unittest framework. All tests are located in the "Tests" folder.
Tests can be run from the command line by:
python -m unittest Tests.tests
Changelog
v0.3.3 (22-09-2020)
- Fix minor typo in
Results
repr
v0.3.2 (09-07-2020)
- Major improvement in iter_subjects, now more accurate parsing
v0.3.1 (08-07-2020)
- fix NoneType error while searching for institution code and name in
iter_results
- API: remove
subject
attribute fromMarks
- toJSON: now handle case where __dict__ is not present.
- API: add
toDict()
helper method to convert into python dict.
v0.3 (08-07-2020) [Breaking Changes]
- API: remove unused
Student
class - API: merge
Student
properties intoResult
.
v0.2 (04-07-2020)
- add support for extraction of student's photo from pdfs
- API: new function
parse_result_pdf
to parse entire pdf in one go.
v0.1.1 (05-06-2020)
- fix #1: include support for 6 digit paper codes
v0.1 (initial release)
License
All files under the repo are licensed under GNU GPLv3
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ggsipu_result-0.3.3.tar.gz
(3.9 MB
view details)
Built Distribution
File details
Details for the file ggsipu_result-0.3.3.tar.gz
.
File metadata
- Download URL: ggsipu_result-0.3.3.tar.gz
- Upload date:
- Size: 3.9 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ccb9ecab0744c3339c4a1e95007988f556de5063e5ffe18de7ddbdde545b78a4 |
|
MD5 | 52b4b378289944e5ba6e986c19534bf8 |
|
BLAKE2b-256 | 425c172b37b7c3ba8b745b795e1a9b60645b3e551aa475668682f8e0fb8f07d9 |
File details
Details for the file ggsipu_result-0.3.3-py3-none-any.whl
.
File metadata
- Download URL: ggsipu_result-0.3.3-py3-none-any.whl
- Upload date:
- Size: 22.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9c05e39f35ef7d41677935578b5db988585c52591314a53da271b28c77f50c81 |
|
MD5 | 80b326797d1d09e2e2e4d6e9d774196f |
|
BLAKE2b-256 | 3fba74bb9b2f3992adc302aa662d70b65e298d4d96088232cdf81a7222f89dc0 |