from django.core.management.base import BaseCommand from django.conf import settings import requests class Command(BaseCommand): help = 'Get animail logs' def add_arguments(self, parser): # Named (optional) arguments parser.add_argument( '--limit', type=int, dest='limit', help='Limit', ) '''parser.add_argument( '--date', dest='date', help='Date', ) parser.add_argument( '--subject', dest='subject', help='Subject', )''' def handle(self, *args, **options): r = requests.get( "https://api.mailgun.net/v3/%s/events" % settings.ANYMAIL['MAILGUN_SENDER_DOMAIN'], auth=("api", settings.ANYMAIL['MAILGUN_API_KEY']), params={"begin": "Wed, 10 Jul 19 00:00:00 +0000", #options.get('date') "ascending": "yes", "limit": options.get('limit'), "pretty": "yes", }) print(r) if r.status_code != 200: print('r.content', r.content) return messages = r.json() print("len(messages['items'])", len(messages['items'])) no_attach = list(filter(lambda i: i['message']['headers']['subject'] == 'Грамота от Lil School' and not len( #options.get('subject') i['message']['attachments']), messages['items'])) print("len(no_attach)", len(no_attach)) print([m['message']['headers']['to'] for m in no_attach])