コード例 #1
0
ファイル: parliament.py プロジェクト: wica128/openkamer
def create_parliament_members(max_results=None,
                              all_members=False,
                              update_votes=True):
    logger.info('BEGIN')
    parliament = Parliament.get_or_create_tweede_kamer()
    if all_members:
        member_wikidata_ids = wikidata.search_parliament_member_ids()
    else:
        member_wikidata_ids = wikidata.search_parliament_member_ids_with_start_date(
        )
    counter = 0
    members = []
    for person_wikidata_id in member_wikidata_ids:
        logger.info('=========================')
        try:
            members += create_parliament_member_from_wikidata_id(
                parliament, person_wikidata_id)
        except (JSONDecodeError, ConnectionError, ConnectTimeout,
                ChunkedEncodingError) as error:
            logger.exception(error)
        except Exception as error:
            logger.exception(error)
            raise
        counter += 1
        if max_results and counter >= max_results:
            logger.info('END: max results reached')
            break
    if update_votes:
        set_individual_votes_derived_info()
    logger.info('END')
    return members
コード例 #2
0
ファイル: parliament.py プロジェクト: openkamer/openkamer
def create_parliament_members(max_results=None, all_members=False, update_votes=True):
    logger.info('BEGIN')
    parliament = Parliament.get_or_create_tweede_kamer()
    if all_members:
        member_wikidata_ids = wikidata.search_parliament_member_ids()
    else:
        member_wikidata_ids = wikidata.search_parliament_member_ids_with_start_date()
    counter = 0
    members = []
    for person_wikidata_id in member_wikidata_ids:
        logger.info('=========================')
        try:
            members += create_parliament_member_from_wikidata_id(parliament, person_wikidata_id)
        except (JSONDecodeError, ConnectionError, ConnectTimeout, ChunkedEncodingError) as error:
            logger.exception(error)
        except Exception as error:
            logger.exception(error)
            raise
        counter += 1
        if max_results and counter >= max_results:
            logger.info('END: max results reached')
            break
    if update_votes:
        set_individual_votes_derived_info()
    logger.info('END')
    return members
コード例 #3
0
ファイル: tests.py プロジェクト: wica128/openkamer
 def test_search_ids_with_start_date(self):
     member_ids = wikidata.search_parliament_member_ids_with_start_date()
     self.assertEqual(len(member_ids), len(set(member_ids)))
     self.assertTrue(len(member_ids) > 530)
コード例 #4
0
ファイル: tests.py プロジェクト: openkamer/openkamer
 def test_search_ids_with_start_date(self):
     member_ids = wikidata.search_parliament_member_ids_with_start_date()
     self.assertEqual(len(member_ids), len(set(member_ids)))
     self.assertTrue(len(member_ids) > 530)
コード例 #5
0
def search_members_wikidata(all_members=False):
    if all_members:
        return wikidata.search_parliament_member_ids()
    else:
        return wikidata.search_parliament_member_ids_with_start_date()