コード例 #1
0
 def open_spider(self, spider):
     self.gephi = GephiStreamerManager(iGephiUrl=self.gephi_uri, iGephiWorkspace=self.gephi_ws)
     self.logger.info('GephiStream connected {}'.format(self.gephi_uri))
コード例 #2
0
from ws4py.client.threadedclient import WebSocketClient
from GephiStreamer import Node, Edge, GephiStreamerManager
import json

t = GephiStreamerManager()


class DummyClient(WebSocketClient):
    #Bootstrap to register to websocket
    def opened(self):
        self.send('{"op":"unconfirmed_sub"}')

    def closed(self, code, reason=None):
        print "Closed down", code, reason

    #When we receive a new blockchain
    def received_message(self, m):
        #Loading the data as json
        data = json.loads("%s" % m)
        print "==%s==" % data['x']['hash']
        #Created the node that represent the transaction
        transactionNode = Node(data['x']['hash'], blue=1)
        #With some properties
        for prop in [
                'vin_sz', 'vout_sz', 'lock_time', 'relayed_by', 'tx_index',
                'time'
        ]:
            transactionNode.property[prop] = data['x'][prop]
        #Hack to avoid "size" of the node
        transactionNode.property['transaction_size'] = data['x']['size']
        #we type our node
コード例 #3
0
    :param: gs  GraphVis instance
    :param: rgb node color
    :param: id_fcn  function to generate node label
    '''

    gnodes = make_gephi_nodes(G.nodes(), rgb=rgb, size=10)

    for k,v1 in gnodes.items():
        gs.add_node(v1)
        try:
            for v2 in make_gephi_nodes(G[k].keys()).values():  # G[k] is networkx node neighbor dictionary
                gs.add_node(v2)
                gs.add_edge(Edge(v1, v2, False, weight=1))
            gs.commit()
        except Exception, e:
            print "Unable to add", k
            print e

    print "Graph sent"
    return gnodes

# quick and dirty setup/testing
if __name__ == "__main__":
    import scratchpad

    G = scratchpad.load_fhx_graph('R-3')

    gs=GephiStreamerManager(iGephiUrl='Tannhauser:8080')

    send_graph(G, gs)