package Ġk z . g vs x . to u . ui . news Ċ Ċ import Ġandroidx . lifecycle . LiveData Ċ import Ġandroidx . lifecycle . Mutable LiveData Ċ import Ġandroidx . lifecycle . ViewModel Ċ import Ġandroidx . lifecycle . viewModel Scope Ċ import Ġdagger . h ilt . android . lifecycle . H ilt ViewModel Ċ import Ġkotlinx . coroutines . Dispatch ers Ċ import Ġkotlinx . coroutines . launch Ċ import Ġkotlinx . coroutines . with Context Ċ import Ġorg . js oup . J soup Ċ import Ġorg . js oup . nodes . Document Ċ import Ġorg . js oup . nodes . Element Ċ import Ġjava . time . LocalDateTime Ċ import Ġjava . time . format . DateTime Formatter Ċ import Ġjavax . inject . Inject Ċ Ċ private Ġval ĠdateTime Formatter : ĠDateTime Formatter Ġ= ĊĠĠĠ ĠDateTime Formatter . of Pattern (" yyyy - MM - dd ĠHH : mm : ss ") Ċ Ċ @ H ilt ViewModel Ċ class ĠNews ViewModel Ġ@ Inject Ġconstructor () Ġ: ĠViewModel () Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġ_ news Ġ= ĠMutable LiveData < List < News >>() ĊĠĠĠ Ġval Ġnews : ĠLive Data < List < News >> Ġ= Ġ_ news ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġfetch News () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġfetch News () Ġ{ ĊĠĠĠĠĠĠĠ ĠviewModel Scope . launch Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdoc Ġ= Ġget Doc () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġnews Div : ĠElement Ġ= Ġdoc . select First (" div . row Ġ> Ġdiv . col . s 1 2 Ġ> Ġdiv . news - list ") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġnews Ġ= Ġmutable ListOf < News >() ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( row Ġin Ġnews Div . select (" div . row ")) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtitle Div Ġ= Ġrow . select First (" div . news - list - title ") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠimageUrl Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrow . select First (" div . news - list - image "). select First (" img "). attr (" abs : src ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtitle Ġ= Ġtitle Div . select First (" a "). text () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠdateTime Ġ= Ġtitle Div . select First (" div . date "). text () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlink To Article Ġ= Ġ" https :// to u . edu . kz / ru " Ġ+ Ġtitle Div . select First (" a "). attr (" href ") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnews . add ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNews ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠimageUrl , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtitle , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLocalDateTime . from ( dateTime Formatter . parse ( dateTime )), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlink To Article ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ_ news . post Value ( news . toList ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġsuspend Ġfun Ġget Doc (): ĠDocument Ġ= Ġwith Context ( Dispatch ers . IO ) Ġ{ ĊĠĠĠĠĠĠĠ ĠJ soup . connect (" https :// to u . edu . kz / ru / component / news "). get () ĊĠĠĠ Ġ} Ċ }