Example #1
0
    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)
Example #2
0
 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()