"""Classe d'accès aux données du site de l'Église """ import requests import browser_cookie3 class SiteEglise: def __init__(self, cookie_path=None): """ :param cookie_path: chemin vers le répertoire où inscrire les fichiers de sortie """ self.cookie_jar = browser_cookie3.firefox(cookie_file=cookie_path) def get_member_list(self, unit_number): """Recevoir la liste des membres :param unit_number: numéro de l'unité (paroisse, branche) :returns: la liste des membres sous forme d'objet JSON """ r = requests.get('https://lcr.churchofjesuschrist.org/services/umlu/report/member-list', params={'lang': "fra", 'unitNumber': unit_number}, headers={'Accept': "application/json", 'Cookie': self.cookie_jar}) r.raise_for_status() return r.json() def get_member_profile(self, member_id): """Recevoir les informations sur un membre :param member_id: ID du membre :returns: les informations sur le membre sous forme d'objet JSON """ r = requests.get(f'https://lcr.churchofjesuschrist.org/records/member-profile/service/{member_id}', params={'lang': "fra"}, headers={'Accept': "application/json", 'Cookie': self.cookie_jar, 'Referer': f"https://lcr.churchofjesuschrist.org/records/member-profile/{member_id}?lang=fra"}) r.raise_for_status() return r.json()