comparison master/bin/fixDates.py @ 27:dd19cf97b6dd

attempt to fix robustness pblms
author Henry S. Thompson <ht@markup.co.uk>
date Sat, 10 Nov 2018 13:20:56 +0000
parents b4e3beb2227e
children 580cc12c9712
comparison
equal deleted inserted replaced
26:58d46e6983fa 27:dd19cf97b6dd
20 except KeyError: 20 except KeyError:
21 month=int(ff.group(2)) 21 month=int(ff.group(2))
22 year=int(ff.group(3)) 22 year=int(ff.group(3))
23 except: 23 except:
24 # Unusual month or year field 24 # Unusual month or year field
25 d=parse("%s %s"%(ff.group(2),ff.group(3))) 25 try:
26 if d is None: 26 d=parse("%s %s"%(ff.group(2),ff.group(3)))
27 print(5,ff.group(1),ff.group(2),ff.group(3),file=sys.stderr) 27 if d is None:
28 year=0 28 print(5,ff.group(1),ff.group(2),ff.group(3),file=sys.stderr)
29 month=0 29 year=0
30 elif d.year<1970: 30 month=0
31 year=0 31 elif d.year<1970:
32 month=1 32 year=0
33 elif d.year>2019: 33 month=1
34 month=1 34 elif d.year>2019:
35 year=2019 35 month=1
36 else: 36 year=2019
37 month=d.month 37 else:
38 year=d.year 38 month=d.month
39 year=d.year
40 except Exception as e:
41 print(6,e,l,file=sys.stderr)
42 bogons+=1
39 count=int(ff.group(4)) 43 count=int(ff.group(4))
40 key=(scheme,year,month) 44 key=(scheme,year,month)
41 tab[key]=tab.get(key,0)+count 45 tab[key]=tab.get(key,0)+count
42 continue 46 continue
43 cols=l.split() 47 cols=l.split()
73 elif d.year>2019: 77 elif d.year>2019:
74 key=(scheme,2019,1) 78 key=(scheme,2019,1)
75 else: 79 else:
76 key=(scheme,d.year,d.month) 80 key=(scheme,d.year,d.month)
77 tab[key]=tab.get(key,0)+count 81 tab[key]=tab.get(key,0)+count
78 except Exception(e): 82 except Exception as e:
79 print(4,e,l,file=sys.stderr) 83 print(4,e,l,file=sys.stderr)
80 bogons+=1 84 bogons+=1
85 if tab=={}:
86 # ssh screwed up
87 exit(1)
81 for ((s,m,y),c) in tab.items(): 88 for ((s,m,y),c) in tab.items():
82 print(s,m,y,c,sep='\t') 89 print(s,m,y,c,sep='\t')
83 print(bogons,file=sys.stderr) 90 print(bogons,file=sys.stderr)