A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/terminusdb/terminusdb-client-python below:

GitHub - terminusdb/terminusdb-client-python: TerminusDB Python Client

Python client for TerminusDB and TerminusCMS.

TerminusDB is an open-source graph database and document store. It allows you to link JSON documents in a powerful knowledge graph all through a simple document API.

TerminusCMS is a hosted headless content management system. It is built upon TerminusDB and is a developer-focused data management platform for complex data and content infrastructure. Sign up and clone a demo project to see how it works.

Release Notes and Previous Versions

TerminusDB Client v10.0 works with TerminusDB v10.0 and TerminusCMS. Please check the Release Notes to find out what has changed.

This only includes the core Python Client (Client) and WOQLQuery.

If you want to use woqlDataframe or the import and export CSV function in the Scaffolding CLI tool:

python -m pip install terminusdb-client[dataframe]

if you are installing from zsh you have to quote the argument like this:

python -m pip install 'terminusdb-client[dataframe]'

python -m pip install git+https://github.com/terminusdb/terminusdb-client-python.git

Connect to local host

from terminusdb_client import Client

client = Client("http://127.0.0.1:6363/")
client.connect()

Connect to TerminusCMS

check the documentation for TerminusCMS about how to add the API token to the environment variable

from terminusdb_client import Client

team="MyTeam"
client = Client(f"https://dashboard.terminusdb.com/{team}/")
client.connect(team="MyTeam", use_token=True)
client.create_database("MyDatabase")
from terminusdb_client.schema import Schema, DocumentTemplate, RandomKey

my_schema = Schema()

class Pet(DocumentTemplate):
    _schema = my_schema
    name: str
    species: str
    age: int
    weight: float

my_schema.commit(client)
Create and insert documents
my_dog = Pet(name="Honda", species="Huskey", age=3, weight=21.1)
my_cat = Pet(name="Tiger", species="Bengal cat", age=5, weight=4.5)
client.insert_document([my_dog, my_cat])
print(list(client.get_all_documents()))
[{'@id': 'Pet/b5edacf854e34fe79c228a91e2af45fb', '@type': 'Pet', 'age': 5, 'name': 'Tiger', 'species': 'Bengal cat', 'weight': 4.5}, {'@id': 'Pet/cdbe3f6d49394b38b952ae315309256d', '@type': 'Pet', 'age': 3, 'name': 'Honda', 'species': 'Huskey', 'weight': 21.1}]
print(list(client.query_document({"@type":"Pet", "age":5})))
[{'@id': 'Pet/145eb73966d14a1394f7cd5576d7d0b8', '@type': 'Pet', 'age': 5, 'name': 'Tiger', 'species': 'Bengal cat', 'weight': 4.5}]
client.delete_database("MyDatabase")

Start a project in the directory

$ tdbpy startproject
Please enter a project name (this will also be the database name): mydb
Please enter an endpoint location (press enter to use localhost default) [http://127.0.0.1:6363/]:
config.json and schema.py created, please customize them to start your project.

Import a CSV named grades.csv

$ tdbpy importcsv grades.csv --na=error
0it [00:00, ?it/s]
Schema object Grades created with grades.csv inserted into database.
schema.py is updated with mydb schema.
1it [00:00,  1.00it/s]
Records in grades.csv inserted as type Grades into database with Lexical ids.

Get documents with query

$ tdbpy alldocs --type Grades -q grade="B-"
[{'@id': 'Grades/Android_Electric_087-65-4321_42.0_23.0_36.0_45.0_47.0_B-', '@type': 'Grades', 'final': 47.0, 'first_name': 'Electric', 'grade': 'B-', 'last_name': 'Android', 'ssn': '087-65-4321', 'test1': 42.0, 'test2': 23.0, 'test3': 36.0, 'test4': 45.0}, {'@id': 'Grades/Elephant_Ima_456-71-9012_45.0_1.0_78.0_88.0_77.0_B-', '@type': 'Grades', 'final': 77.0, 'first_name': 'Ima', 'grade': 'B-', 'last_name': 'Elephant', 'ssn': '456-71-9012', 'test1': 45.0, 'test2': 1.0, 'test3': 78.0, 'test4': 88.0}, {'@id': 'Grades/Franklin_Benny_234-56-2890_50.0_1.0_90.0_80.0_90.0_B-', '@type': 'Grades', 'final': 90.0, 'first_name': 'Benny', 'grade': 'B-', 'last_name': 'Franklin', 'ssn': '234-56-2890', 'test1': 50.0, 'test2': 1.0, 'test3': 90.0, 'test4': 80.0}]

Delete the database

$ tdbpy deletedb
Do you want to delete 'mydb'? WARNING: This operation is non-reversible. [y/N]: y
mydb deleted.

Visit our documentation for a range of short how-to guides, how-to use the Python Client and how to use the collaboration features with the Python Client. Alternatively, undertake the Getting Started with the Python Client Tutorial Series..

  1. Clone this repository git clone https://github.com/terminusdb/terminusdb-client-python.git

  2. Install all development dependencies using poetry

  1. (a) To run test files only
$ poetry run pytest terminusdb_client/tests
  1. (b) To run full test

Or you can run tests in poetry shell then no need to use poetry run

Visit our TerminusDB Documentation for the full explanation of using TerminusDB.

Documentation specifically on the latest version of the Python Client can be found here.

Generating Documentation Locally using Sphinx
  1. Clone this repository git clone https://github.com/terminusdb/terminusdb-client-python.git

  2. Install all development dependencies

  1. Change the directory to docs
  1. Build with Sphinx

The output files are under docs/build/html, open index.html in your browser to inspect.

If you encounter any issues, please report them with your os and environment setup, the version that you are using and a simple reproducible case.

If you have other questions, you can ask in our community community Subreddit or Discord server.

Come visit us on our discord server or our community Subreddit. We are also on Twitter

It will be nice, if you open an issue first so that we can know what is going on, then, fork this repo and push in your ideas. Do not forget to add some test(s) of what value you adding.

Please check CONTRIBUTING.md for more information.

Apache License (Version 2.0)

Copyright (c) 2019


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4