sort suptitle index, serializer

This commit is contained in:
Simon 2026-01-06 22:55:14 +07:00
parent 8d9b33bcb4
commit 36ab4fb668
No known key found for this signature in database
GPG Key ID: 2C15AA5E89985DD4
3 changed files with 35 additions and 35 deletions

View File

@ -606,22 +606,6 @@
{
"index_name": "subtitle",
"expected_map": {
"youtube_id": {
"type": "keyword"
},
"title": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256,
"normalizer": "to_lower"
}
}
},
"subtitle_fragment_id": {
"type": "keyword"
},
"subtitle_channel": {
"type": "text",
"fields": {
@ -635,15 +619,11 @@
"subtitle_channel_id": {
"type": "keyword"
},
"subtitle_start": {
"type": "text"
},
"subtitle_end": {
"type": "text"
},
"subtitle_last_refresh": {
"type": "date",
"format": "epoch_second"
"subtitle_fragment_id": {
"type": "keyword"
},
"subtitle_index": {
"type": "long"
@ -651,12 +631,32 @@
"subtitle_lang": {
"type": "keyword"
},
"subtitle_source": {
"type": "keyword"
"subtitle_last_refresh": {
"type": "date",
"format": "epoch_second"
},
"subtitle_line": {
"type": "text",
"analyzer": "english"
},
"subtitle_source": {
"type": "keyword"
},
"subtitle_start": {
"type": "text"
},
"title": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256,
"normalizer": "to_lower"
}
}
},
"youtube_id": {
"type": "keyword"
}
},
"expected_set": {

View File

@ -65,18 +65,18 @@ class StreamItemSerializer(serializers.Serializer):
class SubtitleFragmentSerializer(serializers.Serializer):
"""serialize subtitle fragment"""
subtitle_index = serializers.IntegerField()
subtitle_line = serializers.CharField()
subtitle_start = serializers.CharField()
subtitle_fragment_id = serializers.CharField()
subtitle_end = serializers.CharField()
youtube_id = serializers.CharField()
title = serializers.CharField()
subtitle_channel = serializers.CharField()
subtitle_channel_id = serializers.CharField()
subtitle_last_refresh = serializers.IntegerField()
subtitle_end = serializers.CharField()
subtitle_fragment_id = serializers.CharField()
subtitle_index = serializers.IntegerField()
subtitle_lang = serializers.CharField()
subtitle_last_refresh = serializers.IntegerField()
subtitle_line = serializers.CharField()
subtitle_source = serializers.ChoiceField(choices=["user", "auto"])
subtitle_start = serializers.CharField()
title = serializers.CharField()
youtube_id = serializers.CharField()
class SubtitleItemSerializer(serializers.Serializer):

View File

@ -345,13 +345,13 @@ class SubtitleParser:
documents = self._chunk_list(video.youtube_id)
channel = video.json_data.get("channel")
meta_dict = {
"youtube_id": video.youtube_id,
"title": video.json_data.get("title"),
"subtitle_channel": channel.get("channel_name"),
"subtitle_channel_id": channel.get("channel_id"),
"subtitle_last_refresh": int(datetime.now().timestamp()),
"subtitle_lang": self.lang,
"subtitle_last_refresh": int(datetime.now().timestamp()),
"subtitle_source": source,
"title": video.json_data.get("title"),
"youtube_id": video.youtube_id,
}
_ = [i.update(meta_dict) for i in documents]