package Ġio . github . w ulkan owy . api . grade s Ċ Ċ import Ġio . github . w ulkan owy . api . Sn P Ċ import Ġio . github . w ulkan owy . api . get Formatted Date Ċ import Ġorg . js oup . nodes . Element Ċ import Ġjava . util . regex . Pattern Ċ Ċ class ĠGr ades ( private Ġval Ġs np : ĠSn P ) Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġcolor Pattern Ġby Ġlazy Ġ{ ĠPattern . compile ("# ([ A - Fa - f 0 - 9 ]{ 6 } |[ A - Fa - f 0 - 9 ]{ 3 }) ") Ġ} ĊĊĠĠĠ Ġfun Ġget Gr ades () Ġ= Ġget Gr ades ("") ĊĊĠĠĠ Ġfun Ġget Gr ades ( semester : ĠString ): ĠList < Grade Kt > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġs np . get Sn P Page Document (" Oc eny / W sz yst kie ? details = 2 & ok res =$ semester ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. select (". oc eny S zc ze g oly - table Ġ> Ġtbody Ġ> Ġtr "). map Ġ{ Ġget Grade ( it ) Ġ}. filter Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . value Ġ!= Ġ" Br ak Ġoc en " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget Grade ( e : ĠElement ): ĠGr ade Kt Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġt ds Ġ= Ġe . select (" td ") ĊĠĠĠĠĠĠĠ Ġval Ġsymbol Ġ= Ġt ds [ 2 ]. text (). split (", Ġ"). first () ĊĊĠĠĠĠĠĠĠ Ġreturn ĠGr ade Kt ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsubject Ġ= Ġt ds [ 0 ]. text (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġt ds [ 1 ]. text (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcolor Ġ= Ġget Color ( td s [ 1 ]. select (". oc ena Cz ast k owa "). attr (" style ")), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsymbol Ġ= Ġsymbol , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġt ds [ 2 ]. text (). replace First ( symbol , Ġ""). replace First (", Ġ", Ġ""), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġweight Ġ= Ġt ds [ 3 ]. text (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdate Ġ= Ġget Formatted Date ( td s [ 4 ]. text ()), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġteacher Ġ= Ġt ds [ 5 ]. text () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget Color ( style Attr : ĠString ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmatcher Ġ= Ġcolor Pattern . matcher ( style Attr ) ĊĠĠĠĠĠĠĠ Ġwhile Ġ( matcher . find ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġmatcher . group ( 1 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn Ġ"" ĊĠĠĠ Ġ} Ċ } Ċ