comparison trip2xml.py @ 4:2d7c91f89f6b

later ecclerig version
author Henry S. Thompson <ht@inf.ed.ac.uk>
date Mon, 09 Mar 2020 17:38:52 +0000
parents e07789816ca5
children
comparison
equal deleted inserted replaced
3:26d9c0308fcf 4:2d7c91f89f6b
13 cleg=None 13 cleg=None
14 class Leg: 14 class Leg:
15 def __init__(self): 15 def __init__(self):
16 self.flights=[] 16 self.flights=[]
17 self.p1=False 17 self.p1=False
18 self.dd=None
19 18
20 def addFlight(self,flight): 19 def addFlight(self,flight):
21 self.flights.append(flight) 20 self.flights.append(flight)
22 21
23 def setDD(self,m): 22 def setDD(self,m):
24 print 'sdd'
25 td="%s-%s-%s"%(year,m.group(2),m.group(1)) 23 td="%s-%s-%s"%(year,m.group(2),m.group(1))
26 self.ddate=datetime.datetime.strptime(td,"%Y-%B-%d").date() 24 self.ddate=datetime.datetime.strptime(td,"%Y-%B-%d").date()
27 self.dd=self.ddate.isoformat() 25 self.dd=self.ddate.isoformat()
28 if self.p1: 26 if self.p1:
29 self.ads=" -- %s"%(self.ddate+datetime.timedelta(1)).isoformat() 27 self.ads=" -- %s"%(self.ddate+datetime.timedelta(1)).isoformat()
30 else: 28 else:
31 self.ads="" 29 self.ads=""
32 30
33 def setPlusOne(self): 31 def setPlusOne(self):
34 print 'p1'
35 self.p1=True 32 self.p1=True
36 33
37 def __str__(self): 34 def __str__(self):
38 fa=self.flights[0].fa 35 fa=self.flights[0].fa
39 ta=self.flights[-1].ta 36 ta=self.flights[-1].ta
55 self.fa=dss[1].split()[-1] 52 self.fa=dss[1].split()[-1]
56 53
57 def setArr(self,ax): 54 def setArr(self,ax):
58 ass=ax.split('|') 55 ass=ax.split('|')
59 self.at=ass[0][:2]+ass[0][3:5] 56 self.at=ass[0][:2]+ass[0][3:5]
60 if (ass[0].find('(+1 day)')==6):
61 self.at+="+1"
62 self.ta=ass[1].split()[-1] 57 self.ta=ass[1].split()[-1]
63 58
64 print "<list type='defn'>" 59 print "<list type='defn'>"
65 for l in sys.stdin: 60 for l in sys.stdin:
66 if leg.search(l): 61 if leg.search(l):
70 m = flight.search(l) 65 m = flight.search(l)
71 if m: 66 if m:
72 fl=Flight(m.group(1)) 67 fl=Flight(m.group(1))
73 cleg.addFlight(fl) 68 cleg.addFlight(fl)
74 continue 69 continue
75 if ((cleg is not None) and 70 m=duration.search(l)
76 (cleg.dd is None)): 71 if m:
77 m=duration.search(l) 72 cleg.setDD(m)
78 if m: 73 continue
79 cleg.setDD(m)
80 continue
81 m=plusOne.search(l) 74 m=plusOne.search(l)
82 if m: 75 if m:
83 cleg.setPlusOne() 76 cleg.setPlusOne()
84 continue 77 continue
85 m=dep.search(l) 78 m=dep.search(l)