MobilityDB-python
MobilityDB-python is a database adapter to access MobilityDB from Python. It supports both the psycopg2 and the asyncpg adapters for PostgreSQL and uses the postgis adapter for PostGIS.
Deprecation Notice :warning:
This package is no longer maintained. Instead, we recommend using the PyMEOS package, which provides a Python interface to the MEOS C library, which is the underlying library of MobilityDB.
Install
pip install python-mobilitydb
Requirements
- Python >= 3.0
- MobilityDB
Basic Usage
Using the psycopg2 adapter for PostgreSQL
import psycopg2
from mobilitydb.psycopg import register
connection = None
try:
# Set the connection parameters to PostgreSQL
connection = psycopg2.connect(host='localhost', database='test', user='user', password='pw')
connection.autocommit = True
# Register MobilityDB data types
register(connection)
# Open a cursor to perform database operations
cursor = connection.cursor()
# Query the database and obtain data as Python objects
select_query = "SELECT * FROM tbl_tfloatseq ORDER BY k LIMIT 10"
cursor.execute(select_query)
rows = cursor.fetchall()
# Print the obtained rows and call a method on the instances
for row in rows:
print("key =", row[0])
print("tfloatseq =", row[1])
if not row[1]:
print("")
else:
print("startTimestamp =", row[1].startTimestamp.isoformat(), "\n")
except (Exception, psycopg2.Error) as error:
print("Error while connecting to PostgreSQL", error)
finally:
# Close the connection
if connection:
connection.close()
Using the asyncg adapter for PostgreSQL
import asyncio
import asyncpg
from mobilitydb.asyncpg import register
async def run():
# Connect to an existing database
connection = await asyncpg.connect(host='localhost', database='test', user='user', password='pw')
try:
# Register MobilityDB data types
await register(connection)
# Query the database and obtain data as Python objects
select_query = "SELECT * FROM tbl_tgeompointseq ORDER BY k LIMIT 10"
rows = await connection.fetch(select_query)
# Print the obtained rows and call a method on the instances
for row in rows:
print("key =", row[0])
print("tgeompointseq =", row[1])
if not row[1]:
print("")
else:
print("startTimestamp =", row[1].startTimestamp.isoformat(), "\n")
finally:
# Close the connection
await connection.close()
# Launch the process
loop = asyncio.get_event_loop()
loop.run_until_complete(run())
Manual
HTML: https://docs.mobilitydb.com/MobilityDB-python/master/
PDF: https://docs.mobilitydb.com/MobilityDB-python/master/python-mobilitydb.pdf
EPUB: https://docs.mobilitydb.com/MobilityDB-python/master/python-mobilitydb.epub
Contributing
Issues and Pull Requests are welcome.
Related Project
MobilityDB SQLAlchemy is another package that provides extensions to SQLAlchemy for interacting with MobilityDB.
Release files for python-mobilitydb 0.1.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| python-mobilitydb-0.1.3.tar.gz | 53.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| python_mobilitydb-0.1.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 186.4 kB
Release files / python-mobilitydb-0.1.3.tar.gz
| Download URL | python-mobilitydb-0.1.3.tar.gz |
|---|---|
| Size | 53.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c161f1e0c15929115da1f6a9f42589350bb3d8835bd4e8ea3c4d5cd437385313
|
|
BLAKE2b-256 checksum How to use checksums |
1975be4a37c859a6ef7258f0fe3d0c49fdab891a0edbd93239bdc5e1c4bee613
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.8.16
|
Release files / python_mobilitydb-0.1.3-py3-none-any.whl
| Download URL | python_mobilitydb-0.1.3-py3-none-any.whl |
|---|---|
| Size | 133.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5c3f60b9e79bf4cacec566dafc8afe11a9ffc918689e221bd9594fb7623f2438
|
|
BLAKE2b-256 checksum How to use checksums |
fe53328d2cf993905f5e524389f8cd2ab90b546ffe5f088c4344894b7c78ee49
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.8.16
|