Size: a a a

2020 January 13

𝐃𝐊

𝐃𝐚𝐧𝐢𝐢𝐥 𝐊𝐨𝐯𝐚𝐥𝐞𝐧𝐤𝐨 in aiogram [ru]
Andrey Hedge
мб. кому будет полезно: Как определить если отправленный файл фото даже при формате документ:

try:
   document_type = message.document.mime_type
except AttributeError:
   document_type = 'not a document'

if 'image' in document_type or message.content_type == 'photo':
   pass

если есть идеи улучшить код, буду рад услышать
Можно не отлавливать ошибку, если разбить обработку на 2 хендлера. 1 на чистые фотки, другой на документы.
Таким образом можно быть уверенным, что туда всегда прилетит документ
источник

𝐃𝐊

𝐃𝐚𝐧𝐢𝐢𝐥 𝐊𝐨𝐯𝐚𝐥𝐞𝐧𝐤𝐨 in aiogram [ru]
Но это мелочи и 1 из вариков
источник

AR

Alex RootJunior in aiogram [ru]
Andrey Hedge
мб. кому будет полезно: Как определить если отправленный файл фото даже при формате документ:

try:
   document_type = message.document.mime_type
except AttributeError:
   document_type = 'not a document'

if 'image' in document_type or message.content_type == 'photo':
   pass

если есть идеи улучшить код, буду рад услышать
екзепшны конечно обрабатываются быстрее чем условия, но не в этом случае.
источник

AR

Alex RootJunior in aiogram [ru]
в идеале - проверять контент тайп или is not None
источник

‌‌‎lyteloli in aiogram [ru]
Andrey Hedge
мб. кому будет полезно: Как определить если отправленный файл фото даже при формате документ:

try:
   document_type = message.document.mime_type
except AttributeError:
   document_type = 'not a document'

if 'image' in document_type or message.content_type == 'photo':
   pass

если есть идеи улучшить код, буду рад услышать
Страшнее, но короче

document_type = dict(message).get('document', {}).get('mime_type', False)
   if not document_type or 'image' in document_type:
       pass
источник

c

cul in aiogram [ru]
.гет.гет
источник

c

cul in aiogram [ru]
Какашка какая-то
источник

AR

Alex RootJunior in aiogram [ru]
‌‌‎lyteloli
Страшнее, но короче

document_type = dict(message).get('document', {}).get('mime_type', False)
   if not document_type or 'image' in document_type:
       pass
if message.document:
   pass
elif message.photo:
   pass
источник

‌‌‎lyteloli in aiogram [ru]
cul
.гет.гет
зато без try except
источник

AR

Alex RootJunior in aiogram [ru]
что за херь вы тут выдумываете?
источник

‌‌‎lyteloli in aiogram [ru]
Alex RootJunior
if message.document:
   pass
elif message.photo:
   pass
так ему надо тип документа проверить
источник

c

cul in aiogram [ru]
‌‌‎lyteloli
так ему надо тип документа проверить
Ему фото надо получить
источник

‌‌‎lyteloli in aiogram [ru]
cul
Ему фото надо получить
ему надо понять пришла фотка или нет
источник

ヽ༼ ಠ益ಠ ༽ノ in aiogram [ru]
источник

AR

Alex RootJunior in aiogram [ru]
‌‌‎lyteloli
так ему надо тип документа проверить
if message.document and message.document.mime_type == ...
источник

‌‌‎lyteloli in aiogram [ru]
но фотка может быть документом
источник

c

cul in aiogram [ru]
‌‌‎lyteloli
ему надо понять пришла фотка или нет
источник

G

Gabben in aiogram [ru]
‌‌‎lyteloli
но фотка может быть документом
источник

AR

Alex RootJunior in aiogram [ru]
жаль PEP-505 отложен.
источник

AR

Alex RootJunior in aiogram [ru]
жаль БДФЛ больше не БДФЛ, он бы продавил фичу в прод.
источник