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 in data structure:

per_person_data = defaultdict(lambda: defaultdict(list))
# save data for each person
per_person_data[person_id][organization_type].append(membership_dict)
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 (Ivan) Janša [40]>,
            'organization': <Organization: Odbor za zunanjo politiko [34]>,
            'on_behalf_of': None,
            'role': 'member',
            'type': 'committee',
            'mandate': '2'
        }, {
            'is_voter': True,
            'member': <Person Janez (Ivan) Janša [40]>,
            'organization': <Organization: Ustavna komisija [88]>,
            'on_behalf_of': None,
            'role': 'member',
            'type': 'committee',
            'mandate': '2'
        }], 
        'party': [{
            'is_voter': True,
            'member': <Person Janez (Ivan) Janša [40]>,
            'organization': <Organization: Slovenska demokratska 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.3.tar.gz (29.0 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.3-py3-none-any.whl (25.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: parladata_base_api-0.3.3.tar.gz
  • Upload date:
  • Size: 29.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for parladata_base_api-0.3.3.tar.gz
Algorithm Hash digest
SHA256 08268ad2b46480a7224dfa49f143e95e66d0fd9b3cf92d63cbceb43a2378d5fe
MD5 73cc44c3a3fbe9610b7cede2e060d20b
BLAKE2b-256 17015a459154f18d79a86243b79c66ad0c8ce7e42156f4b0635ff0cbc5f9ea4c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for parladata_base_api-0.3.3-py3-none-any.whl
Algorithm Hash digest
SHA256 55726785b36d9391caf4b87f6ad502a75c35debd99ed5dd02492d20edbd4b82e
MD5 beaf21ed17d849a3d2665eb7546c728c
BLAKE2b-256 83d0d913168c49a27604c284a5b0a2f4013e4d5958485fc40ba004e5549e8969

See more details on using hashes here.

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