TAGOBus-API는 국가대중교통정보센터(TAGO)에서 제공하는 버스 정보 API를 Python에서 쉽게 사용할 수 있도록 만든 비공식 Python 라이브러리입니다.
Unoffical-TAGO-API
는 python 3.10 이상의 버전을 지원합니다. (추후 3.10 이하 버전도 지원할 예정입니다.)
pip install Unoffical-TAGO-API
본 API를 사용하기 위해서는 공공데이터포털에서 TAGO 버스 관련 데이터를 활용 신청해야 합니다.
서비스 키는 공공데이터포털 마이페이지에서 Decoding 키를 사용하세요.
매개변수 | 설명 |
---|---|
cityCode |
도시 코드 |
routeNo |
버스 노선 번호 |
routeId |
버스 노선 ID |
nodeId |
정류소 ID |
nodeNm |
정류소 이름 |
nodeNo |
정류소 번호 |
gpsLati |
위도(WGS84) |
gpsLong |
경도(WGS84) |
from tagoapi import TAGOClient, TAGOAuth
client = TAGOClient(auth=TAGOAuth("YOUR_SERVICE_KEY"))
클라이언트를 사용하지 않고도 지역 기반 정류장 검색이 가능합니다.
from tagoapi import get_station
stations = get_station("대구")
print(stations)
모든 메서드와 get_station
함수는 다음과 같은 도메인 객체를 반환합니다.
Station
: 정류소 정보Vehicle
: 버스 차량 정보Route
: 버스 노선 정보ArrivalInfo
: 버스 도착 정보
obj.to_dict() # 객체 → dict 변환
ClassName.from_dict(dict) # dict → 객체 변환
ClassName.from_list(list) # dict 리스트 → 객체 리스트 변환
필드명 | 타입 | 설명 |
---|---|---|
nodeId |
str |
정류소 ID |
nodeNm |
str |
정류소명 |
nodeNo |
int |
정류소 번호 |
gpsLati |
float |
위도 (WGS84) |
gpsLong |
float |
경도 (WGS84) |
cityCode |
int |
도시코드 |
updowncd |
int |
상하행구분코드 (0 : 상행, 1 : 하행) |
nodeord |
int |
정류소순번 |
필드명 | 타입 | 설명 |
---|---|---|
routeId |
str |
노선 ID |
routeNo |
str |
노선명 |
routeTp |
int |
노선유형 |
endNodeNm |
str |
종점 |
startNodeNm |
str |
기점 |
endvehicletime |
int |
막차시간 |
startvehicletime |
int |
첫차시간 |
필드명 | 타입 | 설명 |
---|---|---|
nodeId |
str |
정류소 ID |
nodeNm |
str |
정류소명 |
routeId |
str |
노선 ID |
routeNo |
str |
노선명 |
routeTp |
int |
노선유형 |
arrprevstationcnt |
int |
노선유형 |
vehicletp |
str |
차랑유형 |
arrtime |
int |
도착예상시간 |
필드명 | 타입 | 설명 |
---|---|---|
routeId |
str |
노선 ID |
routeNo |
str |
노선명 |
gpsLati |
float |
위도 (WGS84) |
gpsLong |
float |
경도 (WGS84) |
arrtime |
int |
도착예상시간 |
arrprevstationcnt |
int |
노선유형 |
vehicleTp |
str |
차랑유형 |
vehicleNo |
str |
차랑번호 |
메서드 | 설명 | 매개변수 |
---|---|---|
get_route_by_no |
버스 노선 번호로 조회 | cityCode , routeNo |
get_route_by_id |
노선 ID로 정보 조회 | cityCode , routeId |
get_route_by_station |
정류소 경유 노선 조회 | cityCode , nodeId |
get_station_by_route |
노선 경유 정류소 조회 | cityCode , routeId |
get_station |
정류소명 또는 번호로 조회 | cityCode , nodeNm (선택: nodeNo ) |
get_station_by_gps |
GPS 좌표 기반 주변 정류소 조회 | gpsLati , gpsLong |
get_arrival_by_station |
실시간 도착예정정보 및 운행정보 목록을 조회 | cityCode , nodeId |
get_route_arrival_by_station |
특정노선의 실시간 도착예정정보 및 운행정보 목록을 조회 | cityCode , nodeId , routeId |
get_route_pos |
버스의 GPS위치정보의 목록을 조회 | cityCode , routeId |
get_route_pos_near_station |
특정정류소에 접근한 버스의 GPS위치정보를 조회 | cityCode , routeId , nodeId |
버그 제보 또는 기능 요청은 GitHub 이슈에 등록해주세요.