Altbilgi içeriğine atla
PYTHON YARDıM

Py2neo (Geliştiriciler İçin Nasıl Çalışir)

Graf veritabanındaki bilgiler, varlıklar ve ilişkilerini modellemek için birbirine bağlı düğümler ve kenarlar olarak depolanır ve işlenir. Graf veritabanları, ilişkilerin verinin kendisinden eşit veya daha önemli olduğu durumlarda, özellikle tabloların baz alındığı geleneksel ilişkisel veritabanlarına kıyasla etkileyici performans gösterir.

Bu yapı, dolandırıcılık tespiti, öneri sistemleri ve sosyal ağ uygulamaları için harika çalışır çünkü karmaşık ağ sorgularını ve analizlerini verimli bir şekilde destekler. Bu tür veritabanları, graf algoritmalarının kullanılmasıyla, geleneksel veri modelleri ile keşfedilmesi genellikle çok zor olan desenler ve ilişkileri kolayca ortaya çıkarır; bu nedenle, verinin içinde bulunan karmaşık ilişkilerle ilgili birçok içgörü sağlar.

Bu makalede, Py2neo'u nasıl kullanacağımızı ve kütüphaneyi IronPDF ile birleştirerek bulgularınızı kolayca bir PDF içinde göstermeniz için daha da ileri gidebilmeniz üzerine bilgi edineceğiz.

Py2neo Nedir?

Py2neo, uygulamalarda Neo4j, ki çok popüler bir graf veritabanıdır, kullanılmasını sağlamak için Python için gelişmiş bir istemci kütüphanesi ve araç kitidir. Neo4j'nin graf topolojilerine erişmek için sezgisel bir kullanıcı arayüzü sunar, ilişkileri ile düğüm ekleme, düzenleme, kaldırma ve oluşturma işlemlerini kolaylaştırır. Py2neo, Python programları ile Neo4j veritabanı arasında uyumlu bir arayüz sağlar, bu sayede Cypher sorgularını çalıştırmanın yanı sıra graf verilerini doğrudan işleme mümkün hale gelir.

Bu kapsamlı Py2neo özellik seti, gelişmiş sorgulama için Neo4j'nin Python projeleri ile entegrasyonunu ve graf veri yönetiminin verimliliğini kolaylaştırır; Python uygulamalarınızda çok az veya hiç zorlanmadan bir graf veritabanının güçlü özelliklerinden yararlanmanızı sağlar.

Py2neo (Geliştiriciler İçin Nasıl Çalışır): Şekil 1 - Py2neo paket web sayfası

Birçok kullanılan Python dağıtımını çoğu işletim sisteminde istemci uygulamalar altında destekler. Py2neo'nun öncelikle Linux işletim sistemlerinde kullanıldığını bilmeniz önemlidir; diğer işletim sistemleriyle çalışabilir ama doğrudan desteklenmez.

Kütüphane kapsamında tüm komut satırı araçları ve yönetici araçları dahil geniş kapsamlı özellikler bulunmaktadır. Kütüphane, Neo4j veritabanlarıyla başa çıkmanın en sağlam yollarından biridir. Py2neo, pürüzsüz entegrasyon ve güvenilir performans için uyumluluk garantileri sağlar. Kütüphane hem Bolt hem de HTTP protokollerini destekler.

Py2neo'nun Python ile Kurulumu ve Kullanımı

Aşağıdaki prosedürler, Py2neo'nun Neo4j veritabanı ile iletişim kurmasını sağlamak için yapılandırmanıza ve kurmanıza yardımcı olacaktır:

Py2neo Kütüphanesinin Kurulumu

İlk olarak, en son sürümü yüklemek ve hata düzeltmelerini benimsemek için Py2neo istemci kütüphanesini pip aracılığıyla yükleyin:

pip install py2neo
pip install py2neo
SHELL

Neo4j'nin sisteminizde çalışır durumda olduğundan emin olun. Neo4j web sitesinden indirin, ardından işletim sisteminin yükleme talimatlarını izleyin.

Py2neo ile Neo4j'ye Bağlanma

Py2neo, Neo4j örneğinizle Python betiğiniz veya etkileşimli ortamınız arasında bir bağlantı kurmak için kullanılabilir. Aşağıdaki hızlı örneği inceleyin:

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

Konsol Çıkışı

Py2neo (Geliştiriciler İçin Nasıl Çalışır): Şekil 2 - Önceki örnek için konsol çıktısı

Py2neo'yu Yapılandırın

Ayrıca, Py2neo parametrelerini ihtiyaçlarınıza uygun şekilde, örneğin bağlantı ayarları veya varsayılan veritabanı gibi, değiştirebilirsiniz. Daha fazla kurulumun bir tasviri burada sağlanmıştır:

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

Aşağıda, eklenen araçlar ekranından Neo4j veritabanına eklediğimiz veriler bulunmaktadır.

Neo4j İçerikleri

Py2neo (Geliştiriciler İçin Nasıl Çalışır): Şekil 3 - Neo4j veri tabanı içeriği

Cypher Sorguları Çalıştırın

Py2neo kullanarak, grafik veritabanınızla iletişim kurmak için Cypher sorgularını kullanabilirsiniz:

# 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

Konsol Çıkışı

Py2neo (Geliştiriciler İçin Nasıl Çalışır): Şekil 4 - Veri tabanı içeriğini gösteren konsol çıktısı

IronPDF'i Tanıtma

Py2neo (Geliştiriciler İçin Nasıl Çalışır): Şekil 5 - IronPDF web sayfası

Python kütüphanesi IronPDF, PDF'lerin programatik olarak oluşturulması ve manipülasyonunu sağlayabilir. Bu, HTML'den PDF oluşturma, iki veya daha fazla PDF dosyasını birleştirme ve hatta önceden var olan PDF'leri açıklamalar, metin ve görüntüler ekleyerek kullanma gibi büyük işlevsellikler sunar. Bunun üzerine, IronPDF, herhangi bir HTML sayfasından veya web tabanlı materyalden kaliteli PDF'ler oluşturmanıza olanak tanır ve bu, daha sonra raporlar, faturalar ve önceden tanımlı düzenli diğer belgeler oluştururken kullanılabilir.

Bu kütüphanenin gelişmiş özelliklerinden bazıları, sayfa düzenini değiştirme, belgeleri şifreleme ve PDF'lerin içeriğinden veri çıkarma yeteneğini içerir. Ürünlerinizin PDF'leri nasıl ele aldığına dair iyileştirmeler yaparak, genel faydalılıklarını artırmak için daha iyi bir konumda olacaksınız. Bu modül ayrıca IronPDF Python programlarına entegre edildiğinde, belge oluşturma işlemlerinin otomatikleştirilmesine yardımcı olacaktır.

IronPDF Kütüphanesi Yükleyin

Python'ın IronPDF işlevselliğini pip üzerinden kullanmasını sağlayan paketleri yüklemek için aşağıdaki komutu kullanabilirsiniz.

pip install ironpdf

Py2neo'yu IronPDF ile Entegre Etme

Python'da Py2neo'yu IronPDF ile entegre etmek için, IronPDF ile PDF işlemeyi yönetmek ve Py2neo kullanarak bir Neo4j grafik veritabanı ile iletişim kurmak gereklidir. Bu entegrasyonu nasıl gerçekleştireceğinize dair ayrıntılı bir talimat aşağıda verilmiştir:

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

Bu, Py2neo kullanarak bir Neo4j grafik veritabanına bağlanan bir Python betiğidir. Kişi düğümlerinin isimlerini döndüren bir Cypher sorgusu çalıştırır ve sonuçları HTML'ye dönüştürür. Ardından, IronPDF kullanarak bu HTML içeriği ile bir PDF belgesi oluşturur.

Betiğe, tüm gereken kütüphaneleri içe aktararak ve verilen kimlik bilgilerini kullanarak bir Neo4j bağlantısı kurarak başlar. Daha sonra kullanıcı adı listesini bir HTML dizesine dönüştürür ve IronPDF'nin ChromePdfRenderer sınıfını kullanarak "output.pdf" olarak kaydedilen bir PDF oluşturur.

Py2neo (Geliştiriciler İçin Nasıl Çalışır): Şekil 6 - IronPDF ve Py2neo kullanılarak çıktı alınan PDF

Lisanslama

Bir lisans anahtarı, kodun filigran olmadan çalışmasına izin verir. Ücretsiz deneme lisansı için bu linkten kayıt olabilirsiniz. Kimlik göstermenize gerek kalmadan bir tane edinebileceğinizi unutmayın. Ücretsiz deneme sürümüne kaydolmak için tek yapmanız gereken e-posta adresinizi sağlamaktır.

Py2neo (Geliştiriciler İçin Nasıl Çalışır): Şekil 7 - IronPDF lisanslama planı

Sonuç

IronPDF ve Py2neo'nun entegrasyonu, Neo4j grafik veritabanında saklanan verilerin işlenmesi ve görselleştirilmesi için güçlü bir yetenek sağlar. Kullanıcı ve Neo4j arasında iletişim sürecini büyük ölçüde basitleştirir, hızlı aramalar ve ilişkili verilerin geri alınmasını sağlar. Bununla, graf veritabanına yapılan sorgulardan doğrudan HTML etiketlerindeki içerikle detaylı, estetik PDF'ler kolayca oluşturabilme gücüne sahipsiniz.

Bu entegrasyon, grafik tabanlı verilerle daha üst düzey analiz ve görselleştirme sağlar, bu da iş zekası raporları oluşturma veya veri ilişkilerini yakalama gibi geniş bir uygulama yelpazesine etkin bir şekilde uygulanabilir kılar. IronSoftware tarafından Windows, Android, macOS, Linux ve diğer platformlar ile işletim sistemleri için program geliştirilmesine kolaylık sağlamak amacıyla birçok kütüphane sunulmaktadır.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında lisans derecesine sahiptir (Carleton Üniversitesi) ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirme üzerine uzmanlaşmıştır. Kullanıcı dostu ve estetik açıdan hoş arayüzler tasarlamaya tutkuyla bağlı olan Curtis, modern çerç...

Daha Fazlasını Oku

Iron Destek Ekibi

Haftanın 5 günü, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara