import requests import urllib3 import json from utils import geoutil def get_coordinates(ent, ase, level_1, level_2, level_3, midmid): request_url = 'https://nominatim.openstreetmap.org/search.php?q= ' +ase +'&polygon_geojson=1&accept-language=en&format=jsonv2' headers = { "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.3 Safari/605.1.15" } page = requests.get(request_url, headers=headers, verify=False) json_content = json.loads(page.content) # json_content = json.loads(aa) print(json_content, 'jjjjj') all_coordinates = json_content[0]['geojson']['coordinates'][0] centroid = (float(json_content[0]['lon']), float(json_content[0]['lat'])) for p in all_coordinates: p2 = (p[0], p[1]) angle = geoutil.calculate_bearing(centroid, p2) p.append(angle) mid1 = None mid2 = None coordinates = all_coordinates # if level_1 is not None: # # all_coordinates, centroid, mid1, mid2 = geo_level1.get_level1_coordinates(all_coordinates, centroid, level_1, midmid) # if level_2 is not None: # if level_1 is not None and level_1.lower() not in geo_level1.center: # all_coordinates, centroid = geo_level2.get_level2_coordinates(coordinates, centroid, level_2, level_1) # else: # print ("Else executed") # all_coordinates, centroid = geo_level2.get_level2_coordinates(all_coordinates, centroid, level_2, level_1) if level_3 is not None: all_coordinates, centroid = geo_level3.get_level3_coordinates(coordinates, centroid, level_3, level_1) geojson = get_geojson(ent, all_coordinates, centroid) return geojson