Skip to main content

Cached api for parladata

Project description

Parladata base API

Python API with cacheing data for Parladata https://github.com/danesjenovdan/parladata

Installation

Parladata base API is available on PyPI:

$ python -m pip install parladata-base-api

Quickstart

example:

    >>> from parladata_base_api import DataStorage
    >>> storage = DataStorage(MANDATE, MANDATE_STARTIME, MAIN_ORG_ID, API_URL, API_USERNAME, API_PASSWORD)
    >>> perosn_object = storage.people_storage.get_or_add_object({"name": "Name Surname"})

Membership parser

Prepare memberships for each user:

per_person_data = defaultdict(lambda: defaultdict(list))
# save data for each person
per_person_data[person_id][organization_type].append(membership_dict)
# update memebrship data in parladata
membership_storage.refresh_per_person_memberships(
    per_person_data, main_org_obj
)

Example for per_person_data

{40:
    {
        'committee': [
        {
            'is_voter': True,
            'member': <Person Janez Janez [40]>,
            'organization': <Organization: Odbor za zunanjo politiko [34]>,
            'on_behalf_of': None,
            'role': 'member',
            'type': 'committee',
            'mandate': '2'
        }, {
            'is_voter': True,
            'member': <Person Janez Janez [40]>,
            'organization': <Organization: Ustavna komisija [88]>,
            'on_behalf_of': None,
            'role': 'member',
            'type': 'committee',
            'mandate': '2'
        }], 
        'party': [{
            'is_voter': True,
            'member': <Person Janez Janez [40]>,
            'organization': <Organization: Slovenska demonstracijska stranka [2]>,
            'on_behalf_of': None,
            'role': 'member',
            'type': 'party',
            'mandate': '2'
        }]
    },
}

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

parladata_base_api-0.3.9.tar.gz (30.7 kB view details)

Uploaded Source

Built Distribution

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

parladata_base_api-0.3.9-py3-none-any.whl (26.7 kB view details)

Uploaded Python 3

File details

Details for the file parladata_base_api-0.3.9.tar.gz.

File metadata

  • Download URL: parladata_base_api-0.3.9.tar.gz
  • Upload date:
  • Size: 30.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for parladata_base_api-0.3.9.tar.gz
Algorithm Hash digest
SHA256 e20d84697f31d62b976c20a25c3529ef4dd8e7905a214ddacff54f881d5b3f4d
MD5 f8050f6b9d0e1178df4e0e4ae58c5f6e
BLAKE2b-256 d86b45af83ff5900b9c6711c7d737306caa5d1353a94cb6fa8bb12ea6f09ace1

See more details on using hashes here.

Provenance

The following attestation bundles were made for parladata_base_api-0.3.9.tar.gz:

Publisher: publish_pypi.yaml on danesjenovdan/parladata_base_api

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file parladata_base_api-0.3.9-py3-none-any.whl.

File metadata

File hashes

Hashes for parladata_base_api-0.3.9-py3-none-any.whl
Algorithm Hash digest
SHA256 624658dbc2f257d980007d5b94621f2e2c2b1a22d5166c71b13321c470dcc7bf
MD5 5ae3277fdd1c06240901e70739aaae4e
BLAKE2b-256 e3802a5ee0376eca543e6c308d6c7f1f19bf74b8a22405cb96d038564c44f008

See more details on using hashes here.

Provenance

The following attestation bundles were made for parladata_base_api-0.3.9-py3-none-any.whl:

Publisher: publish_pypi.yaml on danesjenovdan/parladata_base_api

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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