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.10.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.10-py3-none-any.whl (26.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for parladata_base_api-0.3.10.tar.gz
Algorithm Hash digest
SHA256 b5065d4d3ede1f20abaca6f786178841e034a59cfc074c803bce251a955d452b
MD5 ec71d82a6955c8b4adc02f2051e0bc3b
BLAKE2b-256 924a054e9ad1e800e2c461df44c2a30f3549a5bb1da7a9d01d90061bc84d9de3

See more details on using hashes here.

Provenance

The following attestation bundles were made for parladata_base_api-0.3.10.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.10-py3-none-any.whl.

File metadata

File hashes

Hashes for parladata_base_api-0.3.10-py3-none-any.whl
Algorithm Hash digest
SHA256 65a805a42e151aba7fb9c5ed4a91a8d86c89928a8e9c37fa15fb155a58d69ae0
MD5 9515893eab1a279ad5706cedf327d071
BLAKE2b-256 7b4069b25a63beafc3796793fede6c2cbc1a18f8a712b067fd4bec00052a3d20

See more details on using hashes here.

Provenance

The following attestation bundles were made for parladata_base_api-0.3.10-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