diff options
Diffstat (limited to 'epaper/main.py')
-rw-r--r-- | epaper/main.py | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/epaper/main.py b/epaper/main.py index 6e97544..f540d23 100644 --- a/epaper/main.py +++ b/epaper/main.py @@ -2,38 +2,41 @@ # -*- coding:utf-8 -*- import epd2in13 +import json import time import requests from datetime import date from datetime import datetime from PIL import Image,ImageDraw,ImageFont -font_size = 14 +font_size = 12 epd = epd2in13.EPD() epd.init(epd.FULL_UPDATE) epd.Clear(0xFF) image = Image.new('1', (epd2in13.EPD_HEIGHT, epd2in13.EPD_WIDTH), 255) # 255: clear the frame -draw = ImageDraw.Draw(image) +draw = ImageDraw.Draw(image) font = ImageFont.truetype('/usr/share/fonts/truetype/wqy/wqy-microhei.ttc', font_size) -resp = requests.get('http://data.c3voc.de/36C3/everything.schedule.json') -days = resp.json()['schedule']['conference']['days'] +resp = json.load(open("everything.schedule.json")) +days = resp['schedule']['conference']['days'] conferences = [] for day in days: for room in day['rooms']: for conference in day['rooms'][room]: - conf_date = time.mktime(datetime.strptime(conference['date'], '%Y-%m-%dT%H:%M:%S%z').timetuple()) - if conf_date - time.time() > 2 * 60 * 60: + conf_date = datetime.strptime(conference['date'].split('+')[0], '%Y-%m-%dT%H:%M:%S') + offset = conf_date - datetime.now() + if offset.seconds / 3600 < 3 and offset.seconds/3600 > 0 and offset.days==0: conferences.append(conference) -sorted_list = sorted(conferences, key = lambda i: i['date']) +sorted_list = sorted(conferences, key=lambda i: i['date']) -for i in range(1, 6): - draw.text((0, font_size * i + 2), conferences[i - 1]['title'], font=font, fill=0) +for i in range(0, 9, 2): + draw.text((0, font_size * i + 2), sorted_list[i]['start'] + ' - ' + sorted_list[i]['room'] + ':', font=font, fill=0) + draw.text((50, font_size * (i + 1) + 2), sorted_list[i]['title'], font=font, fill=0) epd.display(epd.getbuffer(image)) # time.sleep(10) # epd.Clear(0xFF) -epd.sleep() +# epd.sleep() |