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
Resultsrepr
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
subjectattribute 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
Studentclass - API: merge
Studentproperties intoResult.
v0.2 (04-07-2020)
- add support for extraction of student's photo from pdfs
- API: new function
parse_result_pdfto 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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
|