orh ddlZddlmZmZddlmZmZmZddlm Z m Z ddl m Z ddl mZddlmZmZmZeZeZdZd Zd Zdd Zd ZdZdZedS)N) getLoggergetExceptionLogger)searchForGames registerGamesearchForGamesByScraper)CONST_DlcQueriesFilePathCONST_GamesQueriesFilePath) GameDbObject)notifyGameOnDiscord)$arePriceConditionsMetForNotificationisTheNsuidPresentInGameSettingsloadCsvc"tdS)N)updateGamesDatasFromQueries6/var/lib/jenkins/jobs/Dev/workspace/GamesOperations.pyupdateDatasFromQueriesr s!!!!!rcltd}|D] }t|}t|!dS)NGAME mediaType)getQueriesFromFilerr queriesListquerygamess rrrsI$v666K'..Urcptd}|D]"}t|d}t|#dS)NDLCr)rrrrs rupdateDlcDatasFromQueriesr sN$u555Ku666Urrc|dkrt}n|dkrt}g} t|5}|}dddn #1swxYwYn]#t $rP}d|z}t |t t|Yd}~nd}~wwxYw|S)Nrrz$Unable to open and/or read the file ) r ropenread splitlines ExceptionloggererrorexceptionsLogger exceptionstr)r queriesFilerferr logMessages rrrs F022 e  .00 K- +   0!&&((--//K 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ---;kI  Z   ""3s88,,,,,,,,- s;A;'A/# A;/A33A;6A37A;; CACCct}tjtjdkD]}d|jzdz|jzdzt|jz}t|t||j}|dkr8t||j|j|j }|dkrd}t|dS)NTzGame : z (z) Current Price : r)rr selectwhereprice_has_discounttitlensuidr*price_discountedprintr r price_discount_percentager ) gamesSettings gameInSales strMessage isInSettingspriceConditionsas rnotifyAboutGamesInSalesr>,sIIM#*,,22<3RVZ3Z[[11 !22d:[=NNQeehklwmIiJiJJ  j6}kFWXX 4  B=R]RcepfBDODijjO$&&#K00011rctjtjdkD]'}t |jt |d}(dS)NTb)r r0r1r2r6r )r9r=s rloadGamesInSalesrA8sa#*,,22<3RVZ3Z[[  k,---K((( rcfttjtjdk}t j|td}tddd5}| |dddn #1swxYwYd}dS) NrF)default ensure_asciiz ./output.jsonwzutf-8)encodingr@) listr r0r1 price_regulardictsjsondumpsr*r"write) gamesToExport json_datar,r=s rexportGamesInJsonrO>s,..44\5ORS5STTZZ\\]]M =#EJJJI osW 5 5 5   AAAsB$$B(+B()r)rJ LoggerHelperrr StoreHelperrrr constantsrr DatabaseHelperr DiscordNotifierr CommonOperationsr r rr&r(rrr rr>rArOrrrrVs4 66666666MMMMMMMMMMJJJJJJJJ''''''//////kkkkkkkkkk %"""     1 1 1    r