Приведенный ниже код сканирует 'ali_timetable' на наличие новых записей и добавляет их в 'ali_live_departures_data'
import datetime
import pprint
ali_live_departures_data = [
{"COMPANY": "Alilauro", "DEPARTURE PORT": "Napoli Molo Beverello", "ARRIVAL PORT": "Ischia",
"DEPARTURE DATE": "2019-02-18", "DEPARTURE TIME": "20:20", "ARRIVAL DATE": "2019-02-18", "ARRIVAL TIME": "21:40",
"DURATION": "01:20:00", "FERRY TYPE": "Aliscafo", "STATUS": "Active"},
{"COMPANY": "Alilauro", "DEPARTURE PORT": "Ischia", "ARRIVAL PORT": "Napoli Molo Beverello",
"DEPARTURE DATE": "2019-02-19", "DEPARTURE TIME": "06:30", "ARRIVAL DATE": "2019-02-19", "ARRIVAL TIME": "07:20",
"DURATION": "00:50:00", "FERRY TYPE": "Aliscafo", "STATUS": "Active"}]
ali_timetable = [{"COMPANY": "Alilauro", "DEPARTURE PORT": "Forio", "ARRIVAL PORT": "Napoli Molo Beverello",
"DEPARTURE DATE": "2019-02-19", "DEPARTURE TIME": "06:45", "ARRIVAL DATE": "2019-02-19",
"ARRIVAL TIME": "08:05", "DURATION": "01:20:00", "FERRY TYPE": "Aliscafo", "STATUS": "Active"},
{"COMPANY": "Alilauro", "DEPARTURE PORT": "Napoli Molo Beverello", "ARRIVAL PORT": "Ischia",
"DEPARTURE DATE": "2019-02-19", "DEPARTURE TIME": "07:05", "ARRIVAL DATE": "2019-02-19",
"ARRIVAL TIME": "08:25", "DURATION": "01:20:00", "FERRY TYPE": "Aliscafo", "STATUS": "Active"},
{"COMPANY": "Alilauro", "DEPARTURE PORT": "Napoli Molo Beverello", "ARRIVAL PORT": "Forio",
"DEPARTURE DATE": "2019-02-19", "DEPARTURE TIME": "07:05", "ARRIVAL DATE": "2019-02-19",
"ARRIVAL TIME": "08:25", "DURATION": "01:20:00", "FERRY TYPE": "Aliscafo", "STATUS": "Active"}]
newest_departure_date = max(
(datetime.datetime.strptime(it["DEPARTURE DATE"] + it["DEPARTURE TIME"], "%Y-%m-
%d%H:%M") for it in
ali_live_departures_data))
for time_table_entry in ali_timetable:
entry_date_time = datetime.datetime.strptime(
time_table_entry["DEPARTURE DATE"] + time_table_entry["DEPARTURE TIME"], "%Y-%m-%d%H:%M")
if entry_date_time > newest_departure_date:
ali_live_departures_data.append(time_table_entry)
pprint.pprint(ali_live_departures_data)
Вывод:
[{'ARRIVAL DATE': '2019-02-18',
'ARRIVAL PORT': 'Ischia',
'ARRIVAL TIME': '21:40',
'COMPANY': 'Alilauro',
'DEPARTURE DATE': '2019-02-18',
'DEPARTURE PORT': 'Napoli Molo Beverello',
'DEPARTURE TIME': '20:20',
'DURATION': '01:20:00',
'FERRY TYPE': 'Aliscafo',
'STATUS': 'Active'},
{'ARRIVAL DATE': '2019-02-19',
'ARRIVAL PORT': 'Napoli Molo Beverello',
'ARRIVAL TIME': '07:20',
'COMPANY': 'Alilauro',
'DEPARTURE DATE': '2019-02-19',
'DEPARTURE PORT': 'Ischia',
'DEPARTURE TIME': '06:30',
'DURATION': '00:50:00',
'FERRY TYPE': 'Aliscafo',
'STATUS': 'Active'},
{'ARRIVAL DATE': '2019-02-19',
'ARRIVAL PORT': 'Napoli Molo Beverello',
'ARRIVAL TIME': '08:05',
'COMPANY': 'Alilauro',
'DEPARTURE DATE': '2019-02-19',
'DEPARTURE PORT': 'Forio',
'DEPARTURE TIME': '06:45',
'DURATION': '01:20:00',
'FERRY TYPE': 'Aliscafo',
'STATUS': 'Active'},
{'ARRIVAL DATE': '2019-02-19',
'ARRIVAL PORT': 'Ischia',
'ARRIVAL TIME': '08:25',
'COMPANY': 'Alilauro',
'DEPARTURE DATE': '2019-02-19',
'DEPARTURE PORT': 'Napoli Molo Beverello',
'DEPARTURE TIME': '07:05',
'DURATION': '01:20:00',
'FERRY TYPE': 'Aliscafo',
'STATUS': 'Active'},
{'ARRIVAL DATE': '2019-02-19',
'ARRIVAL PORT': 'Forio',
'ARRIVAL TIME': '08:25',
'COMPANY': 'Alilauro',
'DEPARTURE DATE': '2019-02-19',
'DEPARTURE PORT': 'Napoli Molo Beverello',
'DEPARTURE TIME': '07:05',
'DURATION': '01:20:00',
'FERRY TYPE': 'Aliscafo',
'STATUS': 'Active'}]