tagname=tagnames,
fields=('node_id','tagname','value'))
- for node, tagname, value in taginfo:
- tags[tagname][int(node)] = float(value)
+ unpack = operator.itemgetter('node_id','tagname','value')
+ for value in taginfo:
+ node, tagname, value = unpack(value)
+ if value and value.lower() != 'n/a':
+ tags[tagname][int(node)] = float(value)
for tagname, weight, default in self.RATE_FACTORS:
- taginfo = tags[tagname].get
+ taginfo = tags[tagname % replacements].get
for node in nodes:
rates[node] += weight * taginfo(node,default)
value = tags[tag]
if hasattr(self, attr):
orig_attrs[attr] = getattr(self, attr)
+ if not value or value.lower() == 'n/a':
+ value = None
setattr(self, attr, value)
if 'peer_id' in info: