import networkx as nx G = nx.read_graphml('./dickensTestEmbedcall/graph_chunk_entity_relation.graphml') def get_all_edges_and_nodes(G): # Get all edges and their properties edges_with_properties = [] for u, v, data in G.edges(data=True): edges_with_properties.append({ 'start': u, 'end': v, 'label': data.get('label', ''), # Assuming 'label' is used for edge type 'properties': data, 'start_node_properties': G.nodes[u], 'end_node_properties': G.nodes[v] }) return edges_with_properties # Example usage if __name__ == "__main__": # Assume G is your NetworkX graph loaded from Neo4j all_edges = get_all_edges_and_nodes(G) # Print all edges and node properties for edge in all_edges: print(f"Edge Label: {edge['label']}") print(f"Edge Properties: {edge['properties']}") print(f"Start Node: {edge['start']}") print(f"Start Node Properties: {edge['start_node_properties']}") print(f"End Node: {edge['end']}") print(f"End Node Properties: {edge['end_node_properties']}") print("---")