bolster.data_sources.niassembly.members
NI Assembly Members (MLAs) data module.
Fetches current Member of the Legislative Assembly (MLA) data from the NI Assembly AIMS API. The API returns XML; this module parses it into tidy DataFrames.
Update frequency: Real-time (reflects current membership).
Example
>>> from bolster.data_sources.niassembly import members
>>> df = members.get_current_members()
>>> "PersonId" in df.columns
True
>>> len(df) >= 85
True
Attributes
Functions
Return all current MLAs as a DataFrame. |
|
|
Return a single MLA record by PersonId. |
Module Contents
- bolster.data_sources.niassembly.members.get_current_members()[source]
Return all current MLAs as a DataFrame.
Fetches live data from the NI Assembly AIMS API.
- Returns:
PersonId, MemberName, MemberFirstName, MemberLastName, MemberFullDisplayName, PartyName, PartyOrganisationId, ConstituencyName, ConstituencyId, MemberTitle, MemberImgUrl, MemberPrefix, AffiliationId, MemberSortName.
- Return type:
DataFrame with columns
- Raises:
requests.HTTPError – If the API request fails.
Example
>>> df = get_current_members() >>> "PartyName" in df.columns True >>> df["PersonId"].dtype == object or df["PersonId"].dtype.kind in "iu" True
- bolster.data_sources.niassembly.members.get_member_by_id(person_id)[source]
Return a single MLA record by PersonId.
Filters the full current members list to the requested person. The AIMS API does not expose a single-member endpoint, so the full list is fetched and filtered locally.
- Parameters:
person_id (int) – NI Assembly AIMS PersonId for the MLA.
- Returns:
Single-row DataFrame for the matching member, or an empty DataFrame if not found.
- Return type:
Example
>>> df = get_member_by_id(5797) >>> len(df) <= 1 True