#-*- coding:utf-8 -*-#获取最短路径及时间
importrequestsimportxlrdfrom urllib2 importurlopen, quoteimportjsonimportsysimporttimeimportmath
reload(sys)
sys.setdefaultencoding("utf-8")classderection:#这个函数是求两个坐标点的直线距离
#参考http://blog.csdn.net/qq_29933359/article/details/53516440
defgetDistance(self,origin,destination):
start_lat=origin.split(',')[0]
start_lng=origin.split(',')[1]
end_lat= destination.split(',')[0]
end_lng= destination.split(',')[1]
lat1= (math.pi / 180) *float(start_lat)
lat2= (math.pi / 180) *float(end_lat)
lon1= (math.pi / 180) *float(start_lng)
lon2= (math.pi / 180) *float(end_lng)#print start_lat,start_lng,end_lat,end_lng
#地球半径
R = 6371distance= math.acos(math.sin(lat1) * math.sin(lat2) + math.cos(lat1) * math.cos(lat2) * math.cos(abs(lon2 - lon1))) * R*1000
#print distance
returndistance#直线距离少于2公里就选择步行
defgetwalkduration(self,origin,destination):#url='http://api.map.baidu.com/direction/v2/riding?'
url='http://api.map.baidu.com/direction/v1?mode=walking®ion=武汉'output= 'json'ak= '···'uri= url + '&origin=