Zum Fußzeileninhalt springen
PYTHON-HILFE

Py2neo (Wie es für Entwickler funktioniert)

Informationen in einer Graphdatenbank werden als miteinander verbundene Knoten und Kanten gespeichert und manipuliert, um Entitäten und ihre Beziehungen zu modellieren. Graphdatenbanken leisten insbesondere in Situationen überzeugende Arbeit, in denen Beziehungen von gleicher oder größerer Bedeutung sind als die Daten selbst, insbesondere im Vergleich zu herkömmlichen relationalen Datenbanken, die auf Tabellen basieren.

Diese Struktur funktioniert hervorragend in der Betrugserkennung, in Empfehlungssystemen und in Anwendungen sozialer Netzwerke, da sie komplexe Netzwerkabfragen und -analysen effizient unterstützt. Solche Datenbanken decken durch den Einsatz von Graphalgorithmen leicht Muster und Beziehungen auf, die normalerweise sehr schwer mit traditionellen Datenmodellen zu entdecken sind; daher eine Menge aufschlussreicher Informationen über komplexe Beziehungen, die in den Daten vorhanden sind.

In diesem Artikel lernen wir, wie man Py2neo verwendet und die Bibliothek mit IronPDF kombiniert, damit Sie noch weiter gehen und Ihre Ergebnisse einfach in einem PDF anzeigen können.

Was ist Py2neo?

Py2neo ist eine Client-Bibliothek und ein Toolkit für Python, das entwickelt wurde, um die Verwendung von Neo4j, einer sehr beliebten Graphdatenbank, in Anwendungen zu ermöglichen. Es bietet eine intuitive Benutzeroberfläche zum Zugreifen auf die Graphtopologien von Neo4j, indem es Knoten mit Beziehungen einfach hinzufügt, bearbeitet, entfernt und erstellt. Py2neo bietet eine nahtlose Schnittstelle zwischen Python-Programmen und der Neo4j-Datenbank, die über das Ausführen von Cypher-Abfragen hinaus die direkte Manipulation von Graphdaten ermöglicht.

Dieses umfassende Set von Py2neo-Funktionen erleichtert die Integration von Neo4j in Python-Projekte für erweiterte Abfragen und effiziente Verwaltung von Graphdaten, wobei die leistungsstarken Funktionen einer Graphdatenbank für Ihre Python-Anwendungen mit wenig bis gar keiner Arbeit genutzt werden.

Py2neo (Funktionsweise für Entwickler): Abbildung 1 - Py2neo-Paket Webseite

Es unterstützt viele Python-Distributionen, die unter den meisten Betriebssystemen in Clientanwendungen verwendet werden. Bitte beachten Sie, dass Py2neo hauptsächlich mit Linux-Betriebssystemen verwendet wird; es kann möglicherweise mit anderen Betriebssystemen funktionieren, aber es wird nicht direkt unterstützt.

Die Bibliothek enthält umfangreiche Funktionen, einschließlich aller Befehlszeilen-Tools und Verwaltungstools. Die Bibliothek ist eine der robustesten Möglichkeiten, mit Neo4j-Datenbanken umzugehen. Py2neo bietet Kompatibilitätsgarantien für eine reibungslose Integration und zuverlässige Leistung. Die Bibliothek unterstützt sowohl die Bolt- als auch die HTTP-Protokolle.

Einrichten und Verwenden von Py2neo mit Python

Die folgenden Verfahren helfen Ihnen beim Erstellen und Einrichten von Py2neo, um mit einer Neo4j-Datenbank zu kommunizieren:

Installation der Py2neo-Bibliothek

Installieren Sie zuerst die Py2neo-Client-Bibliothek über pip, um die neueste Version zu installieren und Fehlerbehebungen zu übernehmen:

pip install py2neo
pip install py2neo
SHELL

Stellen Sie sicher, dass Neo4j auf Ihrem System läuft. Laden Sie es von der Neo4j-Website herunter und folgen Sie dann den Installationsanweisungen des Betriebssystems.

Verbindung zu Neo4j mit Py2neo herstellen

Py2neo kann verwendet werden, um eine Verbindung zwischen Ihrer Neo4j-Instanz und Ihrem Python-Skript oder Ihrer interaktiven Umgebung herzustellen. Beachten Sie das folgende kurze Beispiel:

from py2neo import Graph

# Replace with your Neo4j credentials and connection details
uri = "bolt://localhost:7687"  # URI for Neo4j Bolt protocol
user = "neo4j"                 # Username
password = "password"          # Password

# Create a connection to the Neo4j database
graph = Graph(uri, auth=(user, password))

# Verify the connection by running a simple query
result = graph.run("RETURN 'Hello, Neo4j!' AS message")
print(result)  # Should print: Hello, Neo4j!
from py2neo import Graph

# Replace with your Neo4j credentials and connection details
uri = "bolt://localhost:7687"  # URI for Neo4j Bolt protocol
user = "neo4j"                 # Username
password = "password"          # Password

# Create a connection to the Neo4j database
graph = Graph(uri, auth=(user, password))

# Verify the connection by running a simple query
result = graph.run("RETURN 'Hello, Neo4j!' AS message")
print(result)  # Should print: Hello, Neo4j!
PYTHON

Konsolenausgabe

Py2neo (Funktionsweise für Entwickler): Abbildung 2 - Konsolenausgabe des vorherigen Beispiels

Py2neo konfigurieren

Darüber hinaus können Sie Py2neo-Parameter anpassen, um Ihren Bedürfnissen zu entsprechen, wie z. B. Verbindungseinstellungen oder Standard-Datenbank. Hier ist eine Darstellung von weiteren Setups:

from py2neo import Graph, Node, Relationship

# Replace with your Neo4j credentials and connection details
uri = "bolt://localhost:7687"  # URI for Neo4j Bolt protocol
user = "neo4j"                 # Username
password = "password"          # Password

# Create a connection to the Neo4j database
graph = Graph(uri, auth=(user, password))

# Example of creating nodes and relationships
# Create nodes for Alice and Bob
alice = Node("Person", name="Alice")
bob = Node("Person", name="Bob")

# Add nodes to the graph
graph.create(alice)
graph.create(bob)

# Create a relationship between Alice and Bob
relationship = Relationship(alice, "KNOWS", bob)
graph.create(relationship)
from py2neo import Graph, Node, Relationship

# Replace with your Neo4j credentials and connection details
uri = "bolt://localhost:7687"  # URI for Neo4j Bolt protocol
user = "neo4j"                 # Username
password = "password"          # Password

# Create a connection to the Neo4j database
graph = Graph(uri, auth=(user, password))

# Example of creating nodes and relationships
# Create nodes for Alice and Bob
alice = Node("Person", name="Alice")
bob = Node("Person", name="Bob")

# Add nodes to the graph
graph.create(alice)
graph.create(bob)

# Create a relationship between Alice and Bob
relationship = Relationship(alice, "KNOWS", bob)
graph.create(relationship)
PYTHON

Nachfolgend sind die Daten aufgeführt, die wir mit den hinzugefügten Werkzeugen in die Neo4j-Datenbank eingefügt haben.

Neo4j-Inhalte

Py2neo (Funktionsweise für Entwickler): Abbildung 3 - Neo4j-Datenbankinhalte

Cypher-Abfragen ausführen

Mit Py2neo können Sie Cypher-Abfragen verwenden, um mit Ihrer Graphdatenbank zu kommunizieren:

# Example of a Cypher query
query = """
MATCH (p:Person)
RETURN p.name AS name
"""
results = graph.run(query)
for record in results:
    print(record["name"])
# Example of a Cypher query
query = """
MATCH (p:Person)
RETURN p.name AS name
"""
results = graph.run(query)
for record in results:
    print(record["name"])
PYTHON

Konsolenausgabe

Py2neo (Funktionsweise für Entwickler): Abbildung 4 - Konsolenausgabe zeigt Datenbankinhalte

Einführung in IronPDF

Py2neo (Funktionsweise für Entwickler): Abbildung 5 - IronPDF-Website

Die Python-Bibliothek namens IronPDF kann die programmgesteuerte Erstellung und Manipulation von PDFs handhaben. Sie bietet immense Funktionalität, um PDFs aus HTML zu generieren, zwei oder mehr PDF-Dateien zu zusammenführen und sogar vorhandene PDFs zu verwenden, indem Anmerkungen, Text und Bilder hinzugefügt werden. Darüber hinaus ermöglicht IronPDF Benutzern, hochwertige PDFs aus jeder HTML-Seite oder webbasiertem Material zu erstellen, die später zum Erstellen von Berichten, Rechnungen und anderen Dokumenten mit vordefiniertem Layout verwendet werden können.

Einige der erweiterten Funktionen dieser Bibliothek umfassen die Möglichkeit, das Seitenlayout zu ändern, Dokumente zu verschlüsseln und Inhalte aus den PDFs zu extrahieren. Indem Sie die Handhabung von PDFs durch Ihre Produkte verbessern, sind Sie besser in der Lage, deren allgemeine Nutzbarkeit zu steigern. Dieses Modul hilft auch bei der Automatisierung von Dokumenterstellungsvorgängen, sobald IronPDF in Python-Programme integriert ist.

IronPDF-Bibliothek installieren

Sie können den folgenden Befehl verwenden, um die Pakete zu installieren, die es Python ermöglichen, IronPDF-Funktionalität über pip zu verwenden.

pip install ironpdf

Integration von Py2neo mit IronPDF

Es ist notwendig, die PDF-Verarbeitung mit IronPDF zu verwalten und mit einer Neo4j-Graphdatenbank mithilfe von Py2neo zu kommunizieren, um Py2neo mit IronPDF in Python zu integrieren. Eine detaillierte Anleitung, wie diese Integration erreicht werden kann, wird unten bereitgestellt:

from py2neo import Graph
from ironpdf import *

import warnings
warnings.filterwarnings('ignore')

# Ensure that you have replaced the string with your own license key
License.LicenseKey = "YOUR LICENSE KEY GOES HERE"

# Create a Graph instance with specific configurations
# Replace with your Neo4j credentials and connection details
uri = "bolt://localhost:7687"  # URI for Neo4j Bolt protocol
user = "neo4j"                 # Username
password = "password"          # Password

# Create a connection to the Neo4j database
graph = Graph(uri, auth=(user, password))

content = ''
content += '<h2>User Details</h2>'

# Example of a Cypher query
query = """
MATCH (p:Person)
RETURN p.name AS name
"""
results = graph.run(query)

# Append each name to the content
for record in results:
    content += '<p>' + record["name"] + '</p>'

# Create a PDF from the HTML content
html_to_pdf = ChromePdfRenderer()
pdf_document = html_to_pdf.RenderHtmlAsPdf(content)

# Save the PDF document
pdf_document.SaveAs("output.pdf")
from py2neo import Graph
from ironpdf import *

import warnings
warnings.filterwarnings('ignore')

# Ensure that you have replaced the string with your own license key
License.LicenseKey = "YOUR LICENSE KEY GOES HERE"

# Create a Graph instance with specific configurations
# Replace with your Neo4j credentials and connection details
uri = "bolt://localhost:7687"  # URI for Neo4j Bolt protocol
user = "neo4j"                 # Username
password = "password"          # Password

# Create a connection to the Neo4j database
graph = Graph(uri, auth=(user, password))

content = ''
content += '<h2>User Details</h2>'

# Example of a Cypher query
query = """
MATCH (p:Person)
RETURN p.name AS name
"""
results = graph.run(query)

# Append each name to the content
for record in results:
    content += '<p>' + record["name"] + '</p>'

# Create a PDF from the HTML content
html_to_pdf = ChromePdfRenderer()
pdf_document = html_to_pdf.RenderHtmlAsPdf(content)

# Save the PDF document
pdf_document.SaveAs("output.pdf")
PYTHON

Dies ist ein Python-Skript, das eine Verbindung zu einer Neo4j-Graphdatenbank mit Py2neo herstellt. Es führt eine Cypher-Abfrage aus, die die Namen von Personen-Knoten zurückgibt und die Ergebnisse in HTML umwandelt. Später erstellt es mit diesem HTML-Inhalt ein PDF-Dokument mithilfe von IronPDF.

Das Skript beginnt mit dem Import aller erforderlichen Bibliotheken und der Einrichtung einer Neo4j-Verbindung mit den angegebenen Anmeldeinformationen. Es wandelt dann eine Liste von Benutzernamen in eine HTML-Zeichenfolge um und verwendet die ChromePdfRenderer-Klasse von IronPDF, um ein PDF zu erstellen, das als "output.pdf" gespeichert wird.

Py2neo (Funktionsweise für Entwickler): Abbildung 6 - Ausgegebenes PDF mit IronPDF und Py2neo

Lizenzierung

Ein Lizenzschlüssel ermöglicht es dem Code, ohne Wasserzeichen zu arbeiten. Sie können sich über diesen Link für eine Testlizenz registrieren. Beachten Sie, dass Sie eine ohne Identifikation erhalten können. Um sich für die Testversion zu registrieren, müssen Sie nur Ihre E-Mail-Adresse angeben.

Py2neo (Funktionsweise für Entwickler): Abbildung 7 - IronPDF-Lizenzierungsplan

Abschluss

Die Integration von IronPDF und Py2neo bietet eine leistungsstarke Möglichkeit, Daten zu handhaben und zu visualisieren, die in einer Neo4j-Graphdatenbank gespeichert sind. Sie vereinfacht den Prozess der Kommunikation zwischen dem Benutzer und Neo4j erheblich, indem sie schnelle Suchvorgänge und die Abfrage von zugehörigen Daten ermöglicht. Damit haben Sie die Möglichkeit, mühelos detaillierte, ästhetische PDFs mit Inhalten in HTML-Tags direkt aus Abfragen an die Graphdatenbank zu erstellen.

Diese Integration ermöglicht eine höhere Analyse- und Visualisierungsebene mit graphbasierten Daten und ist damit effektiv anwendbar auf eine Vielzahl von Anwendungen, wie zum Beispiel das Erstellen von Geschäftsberichten oder das Erfassen von Datenbeziehungen. Eine Vielzahl von Bibliotheken wird von Iron Software angeboten, um die Entwicklung von Programmen für eine Vielzahl von Plattformen und Betriebssystemen, einschließlich Windows, Android, macOS, Linux und anderen, zu erleichtern.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen