def get_data_from_api(country_code: str, area: str, p2p: bool, dedicated: bool, double_vpn: bool, tor_over_vpn: bool, anti_ddos: bool, netflix: bool, location: float) -> List: country_code = country_code.lower() url = "https://api.nordvpn.com/server" json_response = get_json_cached(url) type_filtered_servers = [] if netflix: type_filtered_servers = filters.filter_by_netflix( json_response, country_code) else: type_filtered_servers = filters.filter_by_type(json_response, p2p, dedicated, double_vpn, tor_over_vpn, anti_ddos) if location: type_location_filtered = filters.filter_by_location( location, type_filtered_servers) return type_location_filtered if country_code != "all": # if "-l" had country code with it. e.g "-l au" type_country_filtered = filters.filter_by_country( country_code, type_filtered_servers) if area is None: return type_country_filtered type_country_area_filtered = filters.filter_by_area( area, type_country_filtered) return type_country_area_filtered return type_filtered_servers
def get_data_from_api(country_code, area, p2p, dedicated, double_vpn, tor_over_vpn, anti_ddos): url = "https://api.nordvpn.com/server" json_response = get_json(url) type_filtered_servers = filters.filter_by_type(json_response, p2p, dedicated, double_vpn, tor_over_vpn, anti_ddos) if country_code != "all": # if "-l" had country code with it. e.g "-l au" type_country_filtered = filters.filter_by_country( country_code, type_filtered_servers) if area is None: return type_country_filtered else: type_country_area_filtered = filters.filter_by_area( area, type_country_filtered) return type_country_area_filtered return type_filtered_servers