AttributeError: 'NoneType' object has no attribute 'file_id' в чем проблема?

File "C:\Users\Daniil\Desktop\fortest\main.py", line 50, in spam
    if message.photo.file_id:
AttributeError: 'NoneType' object has no attribute 'file_id'
'NoneType' object has no attribute 'file_id'

в блоке кода решения капчи, через tesseract ocr, при получении изображения капчи в телеграме, выдает такую ошибку, как можно решить?

from pyrogram import Client, filters, types
from pyrogram.errors import FloodWait
from PIL import Image
import pytesseract
import re
import asyncio
import random

pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract.exe'
tessdata_dir_config = '--tessdata-dir "C:\\Program Files\\Tesseract-OCR\\tessdata"'

app = Client('session', api_id=19906117, api_hash='7664cab4e2de780e010037028755e984')

chat_id = "@anonimnyychatbot"

WelcomeMessage = ['test',
                   'test2',
                   'test',
                   'test2']

NicknameMessage = ['test',
                   'test2',
                   'test',
                   'test2']


@app.on_message(chat_id)
async def spam(client: Client, message: types.Message):
    if message.photo.file_id:
        captcha = (pytesseract.image_to_string(Image.open(await app.download_media(message.photo.file_id)),
                                               config=tessdata_dir_config)).strip()
        await app.send_message(chat_id, captcha)
    if "кое-кого" in message.text:
        await app.send_message(chat_id, random.choice(WelcomeMessage) + " " + random.choice(NicknameMessage))
        await asyncio.sleep(2)
        await app.send_message(chat_id, "/next")

app.run()


Ответы (1 шт):

Автор решения: Jazzis

Проверяем, что message.photo не пуст, а уже затем проверяем file_id.

if message.photo and message.photo.file_id
→ Ссылка