python 네 가지 이동 노선 계획 의 실현

4319 단어 python노선 계획
프로필
경로 계획 에는 보행,버스,운전,자전거 타기 등 다양한 방식 이 포함 되 어 있 으 며,오늘 은 고 덕 지도 웹 서비스 api 를 통 해 이동 노선 계획 을 실현 합 니 다.
사고의 방향
장소 에 따라 경위도 획득4.567917.경위도 에 따라 api 를 호출 하여 노선 을 얻 습 니 다4.567917.노선 데 이 터 를 처리 하면 조회 하기 쉽다고 덕 지도 API
대응 링크
https://lbs.amap.com/api/webservice/guide/api/direction
고 덕 맵 의 오픈 플랫폼 에 계 정 을 등록 하고 자신의 프로젝트 를 만 들 면 시스템 은 key 값 을 배정 합 니 다.

개발 지원 에서 웹 서 비 스 를 선택 하고 웹 서비스 api 를 선택 하 십시오.

2.경위도 획득
입력 지점,출력 위도

def get_location_x_y(place):
    #place = input("          ")
    url = 'https://restapi.amap.com/v3/geocode/geo?parameters'
    parameters = {
        'key':'      key',
        'address':'%s' % place
    }
    page_resource = requests.get(url,params=parameters)
    text = page_resource.text       #     json  
    data = json.loads(text)         #         
    location = data["geocodes"][0]['location']
    return location
 
if __name__ == '__main__':
    print(get_location_x_y("    "))
결과 가 져 오기

3.노선 계획(네 가지 방식)
기점,종점 경위도,이동 방식 가 져 오기

from_place = input("       ")
from_location = get_location_x_y(from_place)
to_place = input("      ")
to_location = get_location_x_y(to_place)
type = input("    (1.  、2.  、3.  、4.  ),     ")
이동 경로 가 져 오기
type 은 이동 방식(4 가지 방식 대응 1,2,3,4)
이동 방식 에 따라 고 덕 지도 웹 서비스 api 링크 도 다 릅 니 다.

url="https://restapi.amap.com"
if type=="1":
    url = url+ "/v3/direction/transit/integrated"
elif type=="2":
    url = url + "/v3/direction/walking"
elif type=="3":
    url = url + "/v3/direction/driving"
elif type == "4":
    url = url + "/v4/direction/bicycling"
요청 매개 변수

parameters = {
    'key': '      key',
    'origin': str(from_location),
    'destination': str(to_location),
    'extensions':'all',
    'output':'json',
    'city':'020',
}
인자 중 fromlocation 는 기점 경위도,tolocation 은 종점 경위도 이 고 output 는 데이터 반환 형식 입 니 다.여 기 는 json(홈 페이지 에 xml 등 여러 가지 형식 을 돌려 주 었 습 니 다)
데이터 처리

if type=="1":
    txt = txt['route']['transits']
    for i in txt:
        i = i['segments'][0]['bus']['buslines'][0]['name']
        print(i)
elif type=="2":
    txt = txt['route']['paths'][0]['steps']
    for i in txt:
        i = i['instruction']
        print(i)
elif type=="3":
    txt = txt['route']['paths'][0]['steps']
    for i in txt:
        i = i['instruction']
        print(i)
elif type == "4":
    txt = txt['data']['paths'][0]['steps']
    for i in txt:
        i = i['instruction']
        print(i)
이동 방식 에 따라 얻 은 데이터 키 가 다 르 기 때문에 대응 하 는 처리 가 필요 하고 탐색 하기 편리 합 니 다.
데모 효과
1.버스

2.보행

3.운전

4.기행

마무리
OK,이상 은 python 이 고 덕 지도 웹 서 비 스 를 통 해 서로 다른 이동 방식 의 노선 계획 을 실현 하 는 것 입 니 다.
python 네 가지 이동 노선 계획 의 실현 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 python 이동 노선 계획 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 조회 하 시기 바 랍 니 다.앞으로 많은 응원 바 랍 니 다!

좋은 웹페이지 즐겨찾기