def main(self): Log.Intro(self, "Athena - Fortnite Item Shop Generator") initialized = Athena.LoadConfiguration(self) if initialized is True: if self.delay > 0: Log.Info(self, f"Delaying process start for {self.delay}s...") sleep(self.delay) itemShop = Utility.GET(self, "https://fortnite-api.com/shop/br", parameters={'language': self.language}) if itemShop is not None: itemShop = json.loads(itemShop)['data'] # Strip time from the timestamp, we only need the date date = Utility.ISOtoHuman(self, itemShop["date"].split("T")[0]) Log.Success( self, f"Retrieved Item Shop for {date} in {self.language}") shopImage = Athena.GenerateImage(self, date, itemShop) if shopImage is True: if self.twitterEnabled is True: Athena.Tweet(self, date)
def main(self): print("Generador de Tienda de Objetos") print("Creado por: https://github.com/EthanC/Athena\n") print( "Modificado y Traducido por: https://github.com/PokeSantiTW/Spanish-Twitter-Item-Shop-Bot\n" ) initialized = Athena.LoadConfiguration(self) if initialized is True: if self.delay > 0: log.info(f"Retrasando ejecución por {self.delay}s...") sleep(self.delay) itemShop = Utility.GET( self, "https://fortnite-api.com/v2/shop/br/combined", {"x-api-key": self.apiKey}, {"language": self.language}, ) if itemShop is not None: itemShop = json.loads(itemShop)["data"] # Strip time from the timestamp, we only need the date date = Utility.ISOtoHuman(self, itemShop["date"].split("T")[0], self.language) log.info(f"Encontrado Tienda de Objetos del {date}") shopImage = Athena.GenerateImage(self, date, itemShop) if shopImage is True: if self.twitterEnabled is True: Athena.Tweet(self, date)
def main(self): print("Athena - Fortnite Item Shop Generator") print("https://github.com/Liimiitz/Athena-FNAPI.io\n") initialized = Athena.LoadConfiguration(self) if initialized is True: if self.delay > 0: log.info(f"Delaying process start for {self.delay}s...") sleep(self.delay) itemShop = Utility.GET( self, "https://fortniteapi.io/v1/shop", {"Authorization": self.apiKey}, {"lang": self.language}, ) if itemShop is not None: itemShop = json.loads(itemShop) # Strip time from the timestamp, we only need the date date = Utility.ISOtoHuman(self, today, self.language) log.info(f"Retrieved Item Shop for {date}") shopImage = Athena.GenerateImage(self, date, itemShop) if shopImage is True: if self.twitterEnabled is True: Athena.Tweet(self, date)
def main(self): print("Athena - Fortnite Item Shop Generator") print("https://github.com/EthanC/Athena\n") initialized = Athena.LoadConfiguration(self) if initialized is True: if self.delay > 0: log.info(f"Delaying process start for {self.delay}s...") sleep(self.delay) itemShop = Utility.GET( self, "https://fortnite-api.com/v2/shop/br", {"x-api-key": self.apiKey}, {"language": self.language}, ) if itemShop is not None: itemShop = json.loads(itemShop)["data"] # Strip time from the timestamp, we only need the date date = Utility.ISOtoHuman(self, itemShop["date"].split("T")[0], self.language) log.info(f"Retrieved Item Shop for {date}") shopImage = Athena.GenerateImage(self, date, itemShop) if shopImage is True: if self.twitterEnabled is True: Athena.Tweet(self, date)
def MonitorChange(self) -> bool: prevdata = json.loads( ShopBot.GET_ItemShop(self, api_key=self.api_key, language=self.language)) prevdata_ = Utility.Split_Special(self, data=prevdata) prevdata_ = Utility.Extract_ItemShop(self, data=prevdata_) time.sleep(600) while True: data = json.loads( ShopBot.GET_ItemShop(self, api_key=self.api_key, language=self.language)) data_ = Utility.Split_Special(self, data=data) data_ = Utility.Extract_ItemShop(self, data=data_) log.info("Checking ItemShop change...") if prevdata_ == data_: log.info("ItemShop changed") date = Utility.ISOtoHuman( self, date=Utility.Now_ISO(self), dateformat=self.text_override['date'], hour=self.text_override['hour'], language=self.language) specialoffer = None if self.text_override['auto-specialoffer-convert']['enabled']: with requests.Session() as session: specialoffer = AuthUtil.get_special_offer( self, session=session, email=self.text_override[ 'auto-specialoffer-convert']['email'], password=self.text_override[ 'auto-specialoffer-convert']['password'], user_agent=self.user_agent, language=self.language) if specialoffer is None: specialoffer = self.text_override[ 'auto-specialoffer-convert']['default'] if data is not None and date is not None: log.info("Generating shop image...") Image = ShopBot.GenerateImage( self, data=data, date=date, text_override=self.text_override, specialoffer=specialoffer, namefont=self.namefont, categoryfont=self.categoryfont) else: log.error("Failed to get shop data") if Image: log.info("Success") else: log.info("ItemShop nothing changed") time.sleep(600)
def main(self): initialized = ShopBot.LoadConfig(ShopBot) if initialized: log.info("Fortnite-ShopBot") log.info("製作者: gomashio") log.info("参考: Athena") log.info("Getting ItemShop data...") data = json.loads( ShopBot.GET_ItemShop(self, api_key=self.api_key, language=self.language)) date = Utility.ISOtoHuman(self, date=Utility.Now_ISO(self), dateformat=self.text_override['date'], hour=self.text_override['hour'], language=self.language) specialoffer = None if self.text_override['auto-specialoffer-convert']['enabled']: with requests.Session() as session: specialoffer = AuthUtil.get_special_offer( self, session=session, email=self.text_override['auto-specialoffer-convert'] ['email'], password=self. text_override['auto-specialoffer-convert']['password'], user_agent=self.user_agent, language=self.language) if specialoffer is None: specialoffer = self.text_override['auto-specialoffer-convert'][ 'default'] if data is not None and date is not None: log.info("Generating shop image...") Image = ShopBot.GenerateImage(self, data=data, date=date, text_override=self.text_override, specialoffer=specialoffer, namefont=self.namefont, categoryfont=self.categoryfont) else: log.error("Failed to get shop data") if Image: log.info("Success") if self.monitor_change_enabled: ShopBot.MonitorChange(self) else: exit()
def main(self): initialized = Athena.LoadConfiguration(self) if initialized is True: itemShop = Utility.GET( self, "https://fortnite-api.com/shop/br", # {"x-api-key": self.apiKey}, {"language": LANGUAGE}, ) global date, item_shop_id itemShop = json.loads(itemShop)["data"] current_item_shop_id = itemShop["hash"] # Strip time from the timestamp, we only need the date current_date = Utility.ISOtoHuman(self, itemShop["date"].split("T")[0], LANGUAGE) date = current_date log.info(f"Retrieved Item Shop for {current_date}") if current_item_shop_id != item_shop_id: item_shop_id = current_item_shop_id self.sendImageToChannel(self, current_date, itemShop) # manda immagine else: log.info("Image not generated on this loop (same as previous)") log.info( f"End loop, waiting {config_utils.TIMER_TIME_SECONDS} seconds ------" ) log.info("<---->") time.sleep(config_utils.TIMER_TIME_SECONDS) Athena.main(Athena)