unique_fields = set() for lgw_entry in lgw_entries: unique_fields.update(lgw_entry.keys()) print('unique lgw fields: {}'.format(sorted(list(unique_fields)))) # which fields are mandatory mandatory_fields = unique_fields.copy() for lgw_entry in lgw_entries: remove_fields = [ field for field in mandatory_fields if field not in lgw_entry ] mandatory_fields -= set(remove_fields) print('mandatory lgw fields: {}'.format(sorted(list(mandatory_fields)))) # read our database our_entries = osg.assemble_infos() print('{} entries with us'.format(len(our_entries))) # just the names lgw_names = set([x['name'] for x in lgw_entries]) our_names = set([x['name'] for x in our_entries]) common_names = lgw_names & our_names lgw_names -= common_names our_names -= common_names print('{} in both, {} only in LGW, {} only with us'.format( len(common_names), len(lgw_names), len(our_names))) # find similar names among the rest #print('similar names') #for lgw_name in lgw_names: # for our_name in our_names:
for url in game_urls: if url.startswith('https://web.archive.org/web'): url = url[url.index('http', 5):] more_urls.append(url) game_urls.extend(more_urls) stripped_game_urls = [utils.strip_url(x) for x in game_urls] clean_backlog(stripped_game_urls) # check for unfilled template lines check_template_leftovers() # fix entries fix_entries() # assemble info infos = osg.assemble_infos() # recount and write to readme and to tocs update_readme_and_tocs(infos) # generate report update_statistics(infos) # update database for html table export_json(infos) # collect list of primary code repositories export_primary_code_repositories_json() # collect list of git code repositories (only one per project) for git_statistics script # export_git_code_repositories_json()