nudenet.py 999 B

1234567891011121314151617181920212223242526272829
  1. from wbb import app
  2. from pyrogram import filters
  3. from wbb.utils.errors import capture_err
  4. from nudenet import NudeDetector
  5. import os
  6. detector = NudeDetector()
  7. @app.on_message(filters.photo & filters.sticker & filters.document)
  8. async def nudenet_detector(_, message):
  9. if message.document:
  10. if message.document.mime_type != "image/png" and \
  11. message.document.mime_type != "image/jpg" and \
  12. message.document.mime_type != "image/jpeg":
  13. return
  14. mention = message.from_user.mention
  15. file = await message.reply_to_message.download()
  16. image = detector.detect(file, mode='fast')
  17. if image:
  18. try:
  19. await message.delete()
  20. except Exception:
  21. await message.reply_text("It's a NSFW image, If i had enough permissions, I would've deleted it")
  22. os.remove(file)
  23. return
  24. await message.reply_text(f"{mention} Sent a NSFW image, so i deleted it.")
  25. os.remove(f)