smashed updated
This commit is contained in:
1 parent
77921ba6a8
commit
1da0b26320
14 files changed
+321
-96
No files matched your search
@@ -115,6 +115,7 @@ def _clean_text_content(text: str, is_hashtag: bool = False) -> str:
|
||||
async def create_metadata_for_item(
|
||||
db_session,
|
||||
title: str = None,
|
||||
artist: str = None,
|
||||
cover_url: str = None,
|
||||
authors: list = None,
|
||||
hashtags: list = [],
|
||||
@@ -128,6 +129,15 @@ async def create_metadata_for_item(
|
||||
cleaned_title = cleaned_title[:100].strip() # Truncate and strip after cleaning
|
||||
assert len(cleaned_title) > 3, f"Cleaned title '{cleaned_title}' (from original '{title}') is too short or became empty after cleaning."
|
||||
|
||||
cleaned_artist = None
|
||||
if artist:
|
||||
cleaned_artist = _clean_text_content(artist, is_hashtag=False)
|
||||
cleaned_artist = cleaned_artist[:100].strip()
|
||||
if not cleaned_artist:
|
||||
cleaned_artist = None
|
||||
|
||||
display_name = f"{cleaned_artist} – {cleaned_title}" if cleaned_artist else cleaned_title
|
||||
|
||||
# Process and clean hashtags
|
||||
processed_hashtags = []
|
||||
if hashtags and isinstance(hashtags, list):
|
||||
@@ -142,17 +152,21 @@ async def create_metadata_for_item(
|
||||
processed_hashtags = list(dict.fromkeys(processed_hashtags))[:10]
|
||||
|
||||
item_metadata = {
|
||||
'name': cleaned_title,
|
||||
'attributes': [
|
||||
# {
|
||||
# 'trait_type': 'Artist',
|
||||
# 'value': 'Unknown'
|
||||
# },
|
||||
],
|
||||
'name': display_name,
|
||||
'title': cleaned_title,
|
||||
'display_name': display_name,
|
||||
'downloadable': downloadable,
|
||||
'tags': processed_hashtags, # New field for storing the list of cleaned hashtags
|
||||
'attributes': [],
|
||||
}
|
||||
|
||||
if cleaned_artist:
|
||||
item_metadata['artist'] = cleaned_artist
|
||||
item_metadata['attributes'].append({
|
||||
'trait_type': 'Artist',
|
||||
'value': cleaned_artist,
|
||||
})
|
||||
|
||||
# Generate description from the processed hashtags
|
||||
item_metadata['description'] = ' '.join([f"#{h}" for h in processed_hashtags if h])
|
||||
|
||||
|
||||
Reference in new issue
Block a user