Я подключаюсь к базе данных и получаю список камер и их соответствующие идентификаторы. Затем я просматриваю этот список и получаю текущее время этих изображений, которые были в последний раз сняты. Я хочу найти все камеры и их соответствующие идентификаторы, которые не были сняты на сегодняшнюю дату только (2018-06-28).
import psycopg2
import os
import datetime
DATABASE_URL = os.environ['DATABASE_URL']
conn = psycopg2.connect(DATABASE_URL, sslmode='allow').cursor()
all_cameras_query = "SELECT cameraid, name, url, latitude, longitude FROM cameras ORDER BY cameraid"
conn.execute(all_cameras_query)
all_cameras = conn.fetchall()
current_date = datetime.datetime.today().strftime('%Y-%m-%d')
last_updated_list = []
for camera in all_cameras:
last_updated_query = "SELECT cameraid, curr_time FROM images WHERE cameraid=%d ORDER BY curr_time DESC" % (
camera[0])
conn.execute(last_updated_query)
last_updated_list.append(conn.fetchall())
print(last_updated_list)
last_updated_list распечатывает список каждой камеры и последний отснятый момент. Теперь, используя списки Python и поиск, я хотел бы использовать current_date, чтобы получить все камеры, которые не с сегодняшнего дня.
[(185, datetime.datetime(2018, 6, 28, 10, 1, 27))], [(186, datetime.datetime(2018, 6, 28, 10, 1, 27))], [(187, datetime.datetime(2018, 6, 28, 10, 1, 27))], [(188, datetime.datetime(2018, 6, 28, 10, 1, 27))], [(189, datetime.datetime(2018, 6, 28, 10, 1, 27))], [(190, datetime.datetime(2018, 6, 28, 10, 1, 27))], [(191, datetime.datetime(2018, 6, 28, 10, 1, 27))], [(192, datetime.datetime(2018, 6, 28, 10, 1, 28))], [(193, datetime.datetime(2018, 6, 28, 10, 1, 28))], [(194, datetime.datetime(2018, 6, 28, 10, 1, 28))], [(195, datetime.datetime(2018, 6, 28, 10, 1, 29))], [(196, datetime.datetime(2018, 6, 28, 10, 1, 29))], [(197, datetime.datetime(2018, 6, 28, 10, 1, 29))], [(198, datetime.datetime(2018, 6, 28, 10, 1, 29))], [(199, datetime.datetime(2018, 6, 28, 10, 1, 29))], [(200, datetime.datetime(2018, 6, 28, 10, 1, 29))], [(201, datetime.datetime(2018, 6, 28, 10, 1, 29))]]
Я не слишком уверен, как использовать этот список и манипулировать им, чтобы получить эти идентификаторы камеры и даты, которые я хочу.