Skip to main content

A simple library for read/write access to OData services.

Project description

python-odata

A simple library for read/write access to OData services.

  • Supports OData version 4.0
  • Requires JSON format support from the service
  • Should work on both Python 2.x and 3.x

Documentation

Available on readthedocs.org

Dependencies

  • requests >= 2.0
  • python-dateutil
  • rich >= 13.3.1

Demo

Reading data from the Northwind service.

from odata import ODataService
url = 'http://services.odata.org/V4/Northwind/Northwind.svc/'
Service = ODataService(url, reflect_entities=True)
Supplier = Service.entities['Supplier']

query = Service.query(Supplier)
query = query.limit(2)
query = query.order_by(Supplier.CompanyName.asc())

for supplier in query:
    print('Company:', supplier.CompanyName)

    for product in supplier.Products:
        print('- Product:', product.ProductName)

Writing changes. Note that the real Northwind service is read-only and the data modifications do not work against it.

import datetime

Order = Service.entities['Order']
Employee = Service.entities['Employee']

empl = Service.query(Employee).first()

query = Service.query(Order)
query = query.filter(Order.ShipCity == 'Berlin')

for order in query:
    order.ShippedDate = datetime.datetime.utcnow() 
    order.Employee = empl
    Service.save(order)

Project details


Download files

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

Source Distribution

python_odata-0.5.4.tar.gz (28.6 kB view details)

Uploaded Source

Built Distribution

python_odata-0.5.4-py3-none-any.whl (34.9 kB view details)

Uploaded Python 3

File details

Details for the file python_odata-0.5.4.tar.gz.

File metadata

  • Download URL: python_odata-0.5.4.tar.gz
  • Upload date:
  • Size: 28.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.1 CPython/3.11.1 Windows/10

File hashes

Hashes for python_odata-0.5.4.tar.gz
Algorithm Hash digest
SHA256 97746fcc334634b551b7845f13173ca4b007b68061e8235c9373c7f8de74d7eb
MD5 8ca14115d0463e2236f3e876f0c8307b
BLAKE2b-256 d849f0d423e660098c803d45bba9db512902f2958141bbbbecb14f94aa1ae5a8

See more details on using hashes here.

File details

Details for the file python_odata-0.5.4-py3-none-any.whl.

File metadata

  • Download URL: python_odata-0.5.4-py3-none-any.whl
  • Upload date:
  • Size: 34.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.1 CPython/3.11.1 Windows/10

File hashes

Hashes for python_odata-0.5.4-py3-none-any.whl
Algorithm Hash digest
SHA256 82b97d46f8cca1b5ca6843e754924b89c8673fd07fb21cf070488655b1645cb3
MD5 9c88d9ee53424f81a502e16e121ce227
BLAKE2b-256 3c4bcc488a97d447fea39d420597a7458aefe313c5a4191edc9c328e33697cdd

See more details on using hashes here.

Supported by

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