ct-tarifs/cheapest_ticket.py

37 lines
1.0 KiB
Python
Raw Normal View History

2016-07-10 16:03:47 +00:00
#!/usr/bin/env python3
import subprocess
import sys
import captaintrain as ct
if __name__ == "__main__":
if len(sys.argv) > 3:
departure = ct.station(sys.argv[1])
arrival = ct.station(sys.argv[2])
departure_time = 0
with subprocess.Popen(["date", "-d", sys.argv[3], "-u", "-Iseconds"], stdout=subprocess.PIPE) as f:
departure_time = f.stdout.read().strip().decode()
if departure_time == 0 or departure_time == "":
sys.exit(1)
else:
departure_time = ct.parse_datetime(departure_time)
2016-07-10 16:14:46 +00:00
print("From:", departure.name, departure.id)
print("To:", arrival.name, arrival.id)
2016-07-10 16:03:47 +00:00
print("Departure:", departure_time)
#with open("res.json") as f:
2016-07-10 16:44:13 +00:00
# import json
2016-07-10 16:46:03 +00:00
# res = ct.Search(**json.load(f))
2016-07-10 16:03:47 +00:00
res = ct.search(departure, arrival, departure_time)
2016-07-10 16:46:03 +00:00
min_trips = ct.cheapest_trips(res.trips)
2016-07-10 16:03:47 +00:00
for trip in min_trips:
2016-07-10 16:46:03 +00:00
print(trip)
2016-07-10 16:03:47 +00:00
else:
print("usage")