Django и извлечение IPTC из изображений

Возможно, это глупый вопрос, но как я могу извлечь информацию из изображения, такую как описание, заголовок и ключевые слова, используя Django & Pillow?

У меня есть это, но оно совсем не работает. Можете ли вы помочь мне исправить это или помочь мне с решением? Я могу видеть информацию IPTC в фотошопе и других программах, но я не могу увидеть ее, если загружаю изображения в мой проект django.

def extract_iptc_data(image_file):
    print("Extracting IPTC data...")  # Add this print statement
    # Open the image file
    img = PilImage.open(image_file)
    
    # Initialize title, description, and keywords
    title = None
    description = None
    keywords = []

    # Extract XMP metadata
    xmp_data = img.info.get("xmp", b"")
    print("XMP Data:", xmp_data)  # Print XMP metadata for debugging
    
    if xmp_data:
        # Parse XMP metadata
        xmp_tree = ET.fromstring(xmp_data)
        
        # Find headline (title), keywords, and description
        for elem in xmp_tree.iter():
            if elem.tag.endswith("Headline"):
                title = elem.text
            elif elem.tag.endswith("Keywords"):
                keywords.extend(elem.text.split(","))
            elif elem.tag.endswith("Description"):
                description = elem.text

    return title, description, keywords
Вернуться на верх