213611-11-0003 Ushasi Dey
213611-11-0007 Soumi Dutta
213611-21-0002 Raj Ronit Chowdhury
213611-21-0003 Angshuman Banerjee
213611-21-0004 Sudipto Mallick
213611-21-0005 Avoy Sain
213611-21-0006 Pritam Dey
213611-21-0011 Ayush Kumar Jha
213611-21-0012 Samrat Dutta
213611-21-0017 Debojyoti Roy
213611-21-0019 Akash Chakraborty
213611-21-0024 Ayan Koley
213611-21-0027 Dhiraj Kumar Yadav
213611-21-0028 Namit Mishra
213611-21-0030 Shahil Kumar Tiwary
213611-21-0033 Ayush Kumar Shukla
213611-21-0036 Shirshendu Sen
213611-21-0038 Rameshwar Mahato
213611-21-0040 Binit Kumar Choudhary
(mapcar #'(lambda (roll)
            (org-sbe "read-roll" (roll (identity roll))))
        (mapcar #'(lambda (row)
                    (mapconcat #'identity
                               (split-string (car row) "-") ""))
                rolls-table))
curl -s -X POST --data-urlencode "srch1lbl=$roll" \
     'https://exametc.com/spres2016/prcs/32/special_result_search_step1_view.php?examid=1184' \
     > result-of-$roll.txt
(defun cdswr (term)
  (substring term (1+ (seq-position term ?  ))))

(defun parse-result-for-roll (roll)
  (let* ((file-name (concat "result-of-" roll ".txt"))
         (dom-tree (with-temp-buffer
                     (insert-file-contents file-name)
                     (libxml-parse-html-region (point-min) (point-max))))
         (terms (mapcar #'(lambda (col)
                            (nth 2 col))
                        (dom-by-style dom-tree "border:1px solid #E4ECF1;")))
         (sgpa (cdswr (nth 28 terms)))
         (clearance (cdswr (caddr (nth 29 terms)))))
    (seq-concatenate 'list
                     (list sgpa clearance)
                     (seq-subseq terms 1 7)
                     (seq-subseq terms 8 14)
                     (seq-subseq terms 15 21)
                     (seq-subseq terms 22 28))))

(seq-sort-by #'caddr #'string> 
             (seq-map #'(lambda (row)
                          (let* ((roll-pretty (car row))
                                 (name (cadr row))
                                 (roll (mapconcat #'identity
                                                  (split-string roll-pretty "-") "")))
                            (seq-concatenate 'list (list roll-pretty name)
                                             (parse-result-for-roll roll))))
                      rolls-table))

Roll No Name SGPA Result CMSA-CC-3           CMSA-CC-4           MTMG-GE-2           ENVS-AECC-2          
        Theory Practical Internal Total Grade   Theory Practical Internal Total Grade   Theory Tutorial Internal Total Grade   Theory Project Internal Total Grade  
213611-21-0006 Pritam Dey 8.328 Semester Cleared 39 30 20 89 A+ P 38 27 20 85 A+ P 42 15 20 77 A P 36 28 19 83 A+ P
213611-21-0004 Sudipto Mallick 8.204 Semester Cleared 31 28 20 79 A P 42 29 20 91 A++ P 41 15 20 76 A P 42 27 19 88 A+ P
213611-11-0007 Soumi Dutta 7.814 Semester Cleared 32 28 19 79 A P 29 24 19 72 A P 49 15 20 84 A+ P 36 27 18 81 A+ P
213611-21-0033 Ayush Kumar Shukla 7.752 Semester Cleared 28 28 20 76 A P 31 29 20 80 A+ P 44 15 20 79 A P 30 27 19 76 A P
213611-11-0003 Ushasi Dey 7.397 Semester Cleared 25 29 20 74 A P 30 27 20 77 A P 38 15 20 73 A P 28 27 19 74 A P
213611-21-0024 Ayan Koley 7.394 Semester Cleared 24 28 20 72 A P 31 25 20 76 A P 38 15 20 73 A P 36 28 19 83 A+ P
213611-21-0003 Angshuman Banerjee 7.303 Semester Cleared 30 26 20 76 A P 28 24 20 72 A P 36 15 20 71 A P 32 27 19 78 A P
213611-21-0027 Dhiraj Kumar Yadav 6.939 Semester Cleared 23 24 19 66 B+ P 30 16 20 66 B+ P 40 15 18 73 A P 34 28 19 81 A+ P
213611-21-0036 Shirshendu Sen 6.777 Semester Cleared 22 28 20 70 A P 23 26 20 69 B+ P 31 15 18 64 B+ P 30 28 19 77 A P
213611-21-0005 Avoy Sain 6.771 Semester Cleared 20 26 19 65 B+ P 36 26 19 81 A+ P 22 15 18 55 B P 34 28 19 81 A+ P
213611-21-0012 Samrat Dutta 6.182 Semester Cleared 21 27 19 67 B+ P 23 12 19 54 B P 26 15 18 59 B P 38 27 19 84 A+ P
213611-21-0028 Namit Mishra 6.142 Semester Cleared 18 21 17 56 B P 18 15 18 51 B P 40 15 18 73 A P 32 28 18 78 A P
213611-21-0040 Binit Kumar Choudhary 6.085 Semester Cleared 24 24 19 67 B+ P 21 13 19 53 B P 27 15 18 60 B+ P 26 27 18 71 A P
213611-21-0002 Raj Ronit Chowdhury 5.707 Semester Cleared 20 14 17 51 B P 17 12 17 46 C+ P 38 15 18 71 A P 20 27 18 65 B+ P
213611-21-0011 Ayush Kumar Jha   Semester Not Cleared 15 12 16 43 C+ P 05 19 17 41 F F(TH) 12 15 18 45 F F(TH) 34 28 19 81 A+ P
213611-21-0017 Debojyoti Roy   Semester Not Cleared 03 12 16 31 F F(TH) AB 03 17 20 F F 26 15 18 59 B P 28 27 18 73 A P
213611-21-0019 Akash Chakraborty   Semester Not Cleared 09 19 17 45 F F(TH) 20 20 17 57 B P 28 15 18 61 B+ P 26 28 19 73 A P
213611-21-0030 Shahil Kumar Tiwary   Semester Not Cleared 11 21 17 49 F F(TH) 16 12 17 45 C+ P 41 15 18 74 A P 30 28 18 76 A P
213611-21-0038 Rameshwar Mahato   Semester Not Cleared 20 26 16 62 B+ P 09 21 17 47 F F(TH) 37 15 18 70 A P 36 27 18 81 A+ P
(let* ((results (cddr result)))
  (list (list "Semester Cleared" (seq-count #'(lambda (row) (string= (cadddr row) "Semester Cleared")) results))
        (list "SGPA >= 6.0" (seq-count #'(lambda (row) (>= (if (stringp (caddr row)) 0 (caddr row)) 6)) results))))
Semester Cleared 14
SGPA >= 6.0 13

Created: 2022-12-08 Thu 14:48

Validate