Advertisement
Guest User

prova1

a guest
Oct 22nd, 2017
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.47 KB | None | 0 0
  1. import re
  2. import glob
  3. import folium
  4. import random
  5.  
  6. activity_list = glob.glob('trk/*.gpx')
  7.  
  8. def parse_activity(identifier):
  9.     lat_long = []
  10.  
  11.     filename = identifier
  12.     in_file = open(filename, 'r')
  13.     for line in in_file:
  14.         m = re.search('lat="(.+?)"', line)
  15.         if m:
  16.             found = m.group(1)
  17.             lat = float(found)
  18.         m = re.search('lon="(.+?)"', line)
  19.         if m:
  20.             found = m.group(1)
  21.             long = float(found)
  22.             lat_long.append([lat,long])
  23.  
  24.         m = re.search('<name>(.+?)</name>', line)
  25.         if m:
  26.             name = m.group(1)
  27.         m = re.search('<time>(.+?)</time>', line)
  28.         if m:
  29.             time = m.group(1)
  30.  
  31.     return name, time[0:10], lat_long
  32.  
  33. array_gare = {}
  34.  
  35. lat_long = []
  36.  
  37. for item in activity_list:
  38.     name, time, lat_long = parse_activity(item)
  39.     array_gare[item] = [name, time, lat_long]
  40.  
  41. mappa = folium.Map(location=[44.092,12.361], zoom_start=12, tiles='OpenStreetMap')
  42.  
  43. a = 1
  44. for item in array_gare:
  45.  
  46.     rand_color = ("#%06x" % random.randint(0, 0xFFFFFF))
  47.     gara_loc =  array_gare[item][2]
  48.     folium.PolyLine(gara_loc, weight=6,color=rand_color).add_to(mappa)
  49.  
  50.     popup = array_gare[item][0] + ' ' + array_gare[item][1]
  51.     folium.Marker(location = array_gare[item][2][0],
  52.                 popup= popup).add_to(mappa)
  53.  
  54.     print('{} > {} added to map'.format(a, popup))
  55.     a += 1
  56.  
  57. # webpage generation
  58. mappa.save(outfile='templates/map.html')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement