"""
Personalized News Summarization Assistant with LangChain :: https://o-0268-kvnaditya-8620-o.web.app/documentation/pnsa.html
{ K.V.N. Aditya | P. Sai Karthik | P. Phanindra | M. Venu | B. Lokesh }
SurgeClasses || CMR Technical Campus
"""
import os
import newspaper #[logs]::internal module dependency for NewsURLLoader
import translators as ts
import gnewsclient.gnewsclient as gnewsclient
from langchain_community.document_loaders import NewsURLLoader
from shiny import ui, App, run_app, reactive, render
from multiprocessing import Process, freeze_support
DMA__PNSA = os.path.abspath('PNSA').replace('\\', '/')
def __0__(args__opt):
config__ts_langs = {'english' : 'en','telugu' : 'te','hindi' : 'hi'}
lst__ul__gnc_nc = []
lst__url_tle_despn_smry = []
config__gnc_nc = gnewsclient.NewsClient(location=args__opt[0],topic=args__opt[1],max_results=int(args__opt[3]))
for itr_nc in range(int(args__opt[3])):
try:
lst__ul__gnc_nc.append(config__gnc_nc.get_news()[itr_nc]['link'])
except:
pass
config__lc_nul = NewsURLLoader(lst__ul__gnc_nc,nlp=True)
for itr in enumerate(config__lc_nul.load()):
itr_lst__url_tle_despn_smry = []
itr_lst__url_tle_despn_smry.append(ts.translate_text(itr[1].metadata['title'],translator='google',from_language='auto',to_language=config__ts_langs[args__opt[2]]))
itr_lst__url_tle_despn_smry.append(ts.translate_text('description'+' : '+itr[1].metadata['description'],translator='google',from_language='auto',to_language=config__ts_langs[args__opt[2]]))
itr_lst__url_tle_despn_smry.append(ts.translate_text('summary'+' : '+itr[1].metadata['summary'],translator='google',from_language='auto',to_language=config__ts_langs[args__opt[2]]))
lst__url_tle_despn_smry.append((lst__ul__gnc_nc[itr[0]],itr_lst__url_tle_despn_smry))
return lst__url_tle_despn_smry
def __8__(_ip_,_op_,_io_):
rv__op = reactive.Value(None)
@reactive.Effect
@reactive.event(_ip_.id_iab__pnsa)
def rv__op__pnsa():
io = __0__([_ip_.id_is__opt_locs(),_ip_.id_is__opt_tpcs(),_ip_.id_is__opt_langs(),_ip_.id_in__opt_n_count()])
n = len(io)
p = ""
p += f'
'
p += f"