def get_busway_transfers(): """ :rtype :list[BuswayTransfer] :return: """ busway_transfers_list = [] try: scrapper = scrap("https://en.wikipedia.org/w/index.php?title=TransJakarta_Corridors&oldid=679760031") main_content = scrapper.find('div', attrs={'id': 'mw-content-text'}) tables = main_content.find_all('table', {'class': 'wikitable'}) filter_set = set() for table in tables: rows = table.find_all('tr') transfer_rows = rows[2:] for row in transfer_rows: from_busway_station = row_parser(row.find_all('td')[1].getText()) transfer_set, transfer_map = multi_href_parser(row.find_all('td')[2]) for transfer_key in transfer_set: to_busway_station = transfer_map[transfer_key][1] # no need to state a transfer between stations with similar name if not from_busway_station == to_busway_station: halt_list = list() halt_list.append(from_busway_station) halt_list.append(to_busway_station) halt_list.sort() filter_set.add((halt_list[0], halt_list[1])) for halt_pair in filter_set: busway_transfer = BuswayTransfer() busway_transfer.from_station = 'Halte ' + halt_pair[0] busway_transfer.to_station = 'Halte ' + halt_pair[1] busway_transfers_list.append(busway_transfer) except Exception, e: __logger.error(e)
def test_transfer_route_accessor(self): busway_transfer = BuswayTransfer() busway_transfer.from_station = 'Halte ini' busway_transfer.to_station = 'Halte itu' busway_transfer_accessor.upset_busway_transfer(busway_transfer) post_busway_transfer = busway_transfer_accessor.get_busway_transfer(busway_transfer) """ :type post_busway_transfer: BuswayTransfer""" self.assertEqual(busway_transfer.from_station, post_busway_transfer.from_station) self.assertEqual(busway_transfer.to_station, post_busway_transfer.to_station)
def get_busway_transfers(): """ :rtype :list[BuswayTransfer] :return: """ busway_transfers_list = [] try: scrapper = scrap( "https://en.wikipedia.org/w/index.php?title=TransJakarta_Corridors&oldid=679760031" ) main_content = scrapper.find('div', attrs={'id': 'mw-content-text'}) tables = main_content.find_all('table', {'class': 'wikitable'}) filter_set = set() for table in tables: rows = table.find_all('tr') transfer_rows = rows[2:] for row in transfer_rows: from_busway_station = row_parser( row.find_all('td')[1].getText()) transfer_set, transfer_map = multi_href_parser( row.find_all('td')[2]) for transfer_key in transfer_set: to_busway_station = transfer_map[transfer_key][1] # no need to state a transfer between stations with similar name if not from_busway_station == to_busway_station: halt_list = list() halt_list.append(from_busway_station) halt_list.append(to_busway_station) halt_list.sort() filter_set.add((halt_list[0], halt_list[1])) for halt_pair in filter_set: busway_transfer = BuswayTransfer() busway_transfer.from_station = 'Halte ' + halt_pair[0] busway_transfer.to_station = 'Halte ' + halt_pair[1] busway_transfers_list.append(busway_transfer) except Exception, e: __logger.error(e)
def to_busway_transfer(self): busway_transfer = BuswayTransfer() busway_transfer.from_station = self.from_busway_station busway_transfer.to_station = self.to_busway_station return busway_transfer