def fetch(searx_stats_result: SearxStatisticsResult): ressource_hashes = { 'index': 0 } for network_type in NetworkType: fetch_instances(searx_stats_result, network_type, ressource_hashes) # create searx_json['hashes'] searx_stats_result.hashes = [None] * ressource_hashes['index'] for ressource_hash, ressource_desc in ressource_hashes.items(): if ressource_hash != 'index': i = ressource_desc['index'] del ressource_desc['index'] ressource_desc['hash'] = ressource_hash searx_stats_result.hashes[i] = ressource_desc # detect fork using the static files for _, detail in searx_stats_result.iter_instances(only_valid=True): ressources = detail.get('html', {}).get('ressources') if ressources: found_forks = find_forks(detail['html']['ressources'], searx_stats_result.hashes, searx_stats_result.forks) if found_forks and detail['git_url'] not in found_forks: detail['git_url'] = found_forks[0] # get grade for _, detail in searx_stats_result.iter_instances(only_valid=True): if 'html' in detail: html = detail['html'] html['grade'] = get_grade(html['ressources'], searx_stats_result.hashes)
def fetch(searx_stats_result: SearxStatisticsResult): ressource_hashes = {'index': 0} for network_type in NetworkType: fetch_instances(searx_stats_result, network_type, ressource_hashes) # create searx_json['hashes'] searx_stats_result.hashes = [None] * ressource_hashes['index'] for ressource_hash, ressource_desc in ressource_hashes.items(): if ressource_hash != 'index': i = ressource_desc['index'] del ressource_desc['index'] ressource_desc['hash'] = ressource_hash searx_stats_result.hashes[i] = ressource_desc # get grade for _, detail in searx_stats_result.iter_instances(only_valid=True): if 'html' in detail: html = detail['html'] html['grade'] = get_grade(html['ressources'], searx_stats_result.hashes)