1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from datetime import datetime
from django.core.management import BaseCommand
from gm_upload.utils.image_utils import Picture
# from gm_upload import get_image_base_info
from talos.models.tractate import TractateImages
class Command(BaseCommand):
"""
TractateImages 同步宽和高
"""
# record_file = '/data/log/mimas/app/update_tractate_images.log'
def handle(self, *args, **kwargs):
record_file = '/data/log/mimas/app/update_tractate_images.log'
with open(record_file, 'w') as f:
f.write('start')
# time_index = datetime.strptime('2019-04-26 00:00:00', "%y-%m-%d %H:%M:%S")
pictures = TractateImages.objects.filter(width=0)
f.write('count: {}'.format(pictures.count()))
for item in pictures:
try:
url = item.image_url
picture_info = Picture.get_image_base_info(url)
if not picture_info.get('width') or not picture_info.get('height'):
f.write("Can't find picture info, url: {}".format(url))
item.width = picture_info['width']
item.height = picture_info['height']
item.save()
f.write('Update success, url: {}'.format(url))
except:
f.write("Update failed, url: {}".format(url))
f.write('end')