Skip to main content

Neo4j Bolt driver for Python

Project description

Neo4j Bolt Driver for Python

This repository contains the official Neo4j driver for Python.

Starting with 5.0, the Neo4j Drivers will be moving to a monthly release cadence. A minor version will be released on the last Friday of each month so as to maintain versioning consistency with the core product (Neo4j DBMS) which has also moved to a monthly cadence.

As a policy, patch versions will not be released except on rare occasions. Bug fixes and updates will go into the latest minor version and users should upgrade to that. Driver upgrades within a major version will never contain breaking API changes.

See also: https://neo4j.com/developer/kb/neo4j-supported-versions/

  • Python 3.13 supported (since driver version 5.26.0).

  • Python 3.12 supported (since driver version 5.14.0).

  • Python 3.11 supported (since driver version 5.3.0).

  • Python 3.10 supported.

  • Python 3.9 supported.

  • Python 3.8 supported.

  • Python 3.7 supported.

Installation

To install the latest stable version, use:

pip install neo4j

Alternative Installation for Better Performance

You may want to have a look at the available Rust extensions for this driver for better performance. The Rust extensions are not installed by default. For more information, see neo4j-rust-ext.

Quick Example

from neo4j import GraphDatabase, RoutingControl


URI = "neo4j://localhost:7687"
AUTH = ("neo4j", "password")


def add_friend(driver, name, friend_name):
    driver.execute_query(
        "MERGE (a:Person {name: $name}) "
        "MERGE (friend:Person {name: $friend_name}) "
        "MERGE (a)-[:KNOWS]->(friend)",
        name=name, friend_name=friend_name, database_="neo4j",
    )


def print_friends(driver, name):
    records, _, _ = driver.execute_query(
        "MATCH (a:Person)-[:KNOWS]->(friend) WHERE a.name = $name "
        "RETURN friend.name ORDER BY friend.name",
        name=name, database_="neo4j", routing_=RoutingControl.READ,
    )
    for record in records:
        print(record["friend.name"])


with GraphDatabase.driver(URI, auth=AUTH) as driver:
    add_friend(driver, "Arthur", "Guinevere")
    add_friend(driver, "Arthur", "Lancelot")
    add_friend(driver, "Arthur", "Merlin")
    print_friends(driver, "Arthur")

Further Information

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

neo4j_driver-5.28.4.tar.gz (232.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

neo4j_driver-5.28.4-py3-none-any.whl (314.1 kB view details)

Uploaded Python 3

File details

Details for the file neo4j_driver-5.28.4.tar.gz.

File metadata

  • Download URL: neo4j_driver-5.28.4.tar.gz
  • Upload date:
  • Size: 232.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for neo4j_driver-5.28.4.tar.gz
Algorithm Hash digest
SHA256 a21707ebd267da3165ac66ce7dfbfb3d29cfe4ef5de6e50c6bda19975a654b39
MD5 44b7a4950d91ffef7f11f990eebb1714
BLAKE2b-256 64e5139816a8b44c5bc13a705ed1dae9fea6f3ac8d97710521c366071338a6d6

See more details on using hashes here.

File details

Details for the file neo4j_driver-5.28.4-py3-none-any.whl.

File metadata

  • Download URL: neo4j_driver-5.28.4-py3-none-any.whl
  • Upload date:
  • Size: 314.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for neo4j_driver-5.28.4-py3-none-any.whl
Algorithm Hash digest
SHA256 de86c171496d195408b316c7c00a3bccdb26319868631eed787210035c989129
MD5 e3ed7b00d943d34c6e84d07303689890
BLAKE2b-256 57315eee49b9dc3fe8a2ffe77fd3fc8ee90ecfdabb21f3e11435ddabe421a3b5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page