def test_tag_numbers(self): tag_list = sw.get_all_tags_from_html(self.html_string) count_summary = sw.get_count_of_each_tag(tag_list) assert count_summary['html'] == 1 assert count_summary['body'] == 1 assert count_summary['li'] == 3
return trie def get_nested_default(d, path): return reduce(lambda d, k: d.setdefault(k, {}), path, d) def set_nested(d, path, value): get_nested_default(d, path[:-1])[path[-1]]['count'] = value def in_trie(trie, word): if type(word) != str: raise TypeError("Trie only works on str!") keys=[] temp_trie = trie for letter in word: if letter not in temp_trie: return None temp_trie = temp_trie[letter] keys.append(letter) return keys if __name__ == '__main__': url = 'http://python.org/' html_content = sw.get_html_content(url) complete_tag_list = sw.get_all_tags_from_html(html_content ) trie = make_trie(*complete_tag_list) print_tags(trie )