Channel about parser workaround, #build

Changed:
- Use /featured endpoint for channel parsing
- Improved version check cleanup process
- Handle version check random channel building errors
This commit is contained in:
Simon 2023-12-03 14:50:50 +07:00
commit db2f249979
No known key found for this signature in database
GPG Key ID: 2C15AA5E89985DD4
3 changed files with 16 additions and 11 deletions

View File

@ -30,6 +30,10 @@ class YoutubeChannel(YouTubeItem):
self.all_playlists = False
self.task = task
def build_yt_url(self):
"""build youtube url"""
return f"{self.yt_base}{self.youtube_id}/featured"
def build_json(self, upload=False, fallback=False):
"""get from es or from youtube"""
self.get_from_es()

View File

@ -106,7 +106,10 @@ class AppConfig:
# missing nested values
for sub_key, sub_value in value.items():
if sub_key not in redis_config[key].keys():
if (
sub_key not in redis_config[key].keys()
or sub_value == "rand-d"
):
if sub_value == "rand-d":
sub_value = self._build_rand_daily()
@ -277,12 +280,12 @@ class ReleaseVersion:
"""check version"""
print(f"[{self.local_version}]: look for updates")
self.get_remote_version()
new_version, is_breaking = self._has_update()
new_version = self._has_update()
if new_version:
message = {
"status": True,
"version": new_version,
"is_breaking": is_breaking,
"is_breaking": self.is_breaking,
}
RedisArchivist().set_message(self.NEW_KEY, message)
print(f"[{self.local_version}]: found new version {new_version}")
@ -301,15 +304,13 @@ class ReleaseVersion:
def _has_update(self):
"""check if there is an update"""
for idx, number in enumerate(self.local_version):
is_newer = self.remote_version[idx] > number
if is_newer:
return self.response["release_version"], self.is_breaking
if self.remote_version > self.local_version:
return self.remote_version
if self.is_unstable and self.local_version == self.remote_version:
return self.response["release_version"], self.is_breaking
return self.remote_version
return False, False
return False
@staticmethod
def _parse_version(version):
@ -323,7 +324,7 @@ class ReleaseVersion:
if not message:
return False
if self._parse_version(message.get("version")) == self.local_version:
if self.local_version >= self._parse_version(message.get("version")):
RedisArchivist().del_message(self.NEW_KEY)
return settings.TA_VERSION

View File

@ -1,5 +1,5 @@
apprise==1.6.0
celery==5.3.5
celery==5.3.6
Django==4.2.7
django-auth-ldap==4.6.0
django-cors-headers==4.3.1