Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import urllib, json, networkx as nx
- class topology_parser:
- def __init__(self,url):
- self.topology = nx.MultiGraph()
- self.url=url
- self.nx_olsr(self.url,self.topology)
- def update(self):
- self.nx_olsr(self.url,self.topology)
- def nx_olsr(self,url,topol):
- response =urllib.urlopen(url)
- json_data = json.loads(response.read())
- for elem in json_data["topology"]:
- topol.add_edge(elem["lastHopIP"], elem["destinationIP"], weight=elem["tcEdgeCost"])
- def make_diff(self, old_graph):
- to_remove = nx.difference(old_graph, self.topology)
- to_add = nx.difference(self.topology, old_graph)
- return [to_remove, to_add]
- def main():
- firenze="http://10.150.9.1:9090/"
- tp=topology_parser(firenze);
- #cycle every n seconds
- tp.update();
- diff= tp.make_diff(old_graph)
- if __name__ == "__main__":
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement