def scrape_team(link, league): bhv_id = parsing.parse_team_bhv_id(link) name = link.text url = Team.build_source_url(league.bhv_id, bhv_id) html = http.get_text(url) dom = parsing.html_dom(html) game_rows = parsing.parse_game_rows(dom) short_team_names = parsing.parse_team_short_names(game_rows) short_team_name = Team.find_matching_short_name(name, short_team_names) Team.create_or_update_team(name, short_team_name, league, bhv_id, LOGGER)
def create_team(link, league): bhv_id = parsing.parse_team_bhv_id(link) name = link.text url = Team.build_source_url(league.bhv_id, bhv_id) dom = logic.get_html(url) game_rows = parsing.parse_game_rows(dom) short_team_names = [ c.text for game_row in game_rows for c in game_row.xpath('td')[4:7:2] ] short_team_name = max(set(short_team_names), key=short_team_names.count) team, created = Team.objects.get_or_create(name=name, short_name=short_team_name, league=league, bhv_id=bhv_id) if created: LOGGER.info('CREATED Team: %s', team) else: LOGGER.info('EXISTING Team: %s', team)