diff --git a/routeparser.py b/routeparser.py
new file mode 100644
index 0000000000000000000000000000000000000000..bd78e52793178f99531f5e7df791359e11f7ee94
--- /dev/null
+++ b/routeparser.py
@@ -0,0 +1,73 @@
+import osmnx as ox
+
+from typing import List, Tuple
+
+from PIL import Image
+
+import streetview
+
+
+def get_points_from_coordinates(
+        start_lat: float,
+        start_lon: float,
+        end_lat: float,
+        end_lon: float
+) -> List[Tuple[float, float]]:
+    north = max(start_lat, end_lat) + 0.01
+    south = min(start_lat, end_lat) - 0.01
+    east = max(start_lon, end_lon) + 0.01
+    west = min(start_lon, end_lon) - 0.01
+
+    graph = ox.graph_from_bbox(
+        (west, south, east, north),
+        network_type='drive'
+    )
+
+    start = ox.distance.nearest_nodes(graph, start_lon, start_lat)
+    end = ox.distance.nearest_nodes(graph, end_lon, end_lat)
+    route = ox.shortest_path(graph, start, end)
+
+    if not route:
+        return []
+
+    gdf = ox.routing.route_to_gdf(graph, route)
+
+    points = [i[::-1] for i in gdf.geometry.iloc[0].coords]
+
+    for row in gdf.geometry.iloc[1:]:
+        mas = [i[::-1] for i in row.coords[1:]]
+        points += mas
+
+    return points
+
+
+def download_pano_images(
+        start_lat: float,
+        start_lon: float,
+        end_lat: float,
+        end_lon: float,
+        folder: str
+) -> int:
+    points = get_points_from_coordinates(start_lat, start_lon, end_lat, end_lon)
+    panoids_buffer = []
+    print(len(points))
+
+    for point in points:
+        panoids = streetview.panoids(lat=point[0], lon=point[1], closest=True)
+
+        if len(panoids) == 0 or panoids[-1]["panoid"] in panoids_buffer:
+            continue
+
+        panorama = streetview.download_panorama_v3(panoids[-1]['panoid'], zoom=2, disp=False)
+        panoids_buffer.append(panoids[-1]['panoid'])
+
+        image = Image.fromarray(panorama)
+        image.save(f"{folder}/{panoids[-1]['lat']}_{panoids[-1]['lon']}.png")
+
+    return len(points)
+
+
+lat, lon = 55.64735005518794, 37.74272522210102
+lat2, lon2 = 55.64709648470947, 37.72037420394722
+
+download_pano_images(lat, lon, lat2, lon2, "test_2")