Unofficial Python wrapper for TAGO Bus API
Project description
TAGOBus-API
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) |
사용 법
1. 클라이언트 생성
from tagoapi import TAGOClient, TAGOAuth
client = TAGOClient(auth=TAGOAuth("YOUR_SERVICE_KEY"))
2. 정류장 검색 (로컬 함수)
클라이언트를 사용하지 않고도 지역 기반 정류장 검색이 가능합니다.
from tagoapi import get_station
stations = get_station("대구")
print(stations)
3. 도메인 클래스
모든 메서드와 get_station 함수는 다음과 같은 도메인 객체를 반환합니다.
Station: 정류소 정보Vehicle: 버스 차량 정보Route: 버스 노선 정보ArrivalInfo: 버스 도착 정보
공통 메서드
obj.to_dict() # 객체 → dict 변환
ClassName.from_dict(dict) # dict → 객체 변환
ClassName.from_list(list) # dict 리스트 → 객체 리스트 변환
도메인 객체 필드 목록
Station
| 필드명 | 타입 | 설명 |
|---|---|---|
nodeId |
str |
정류소 ID |
nodeNm |
str |
정류소명 |
nodeNo |
int |
정류소 번호 |
gpsLati |
float |
위도 (WGS84) |
gpsLong |
float |
경도 (WGS84) |
cityCode |
int |
도시코드 |
updowncd |
int |
상하행구분코드 (0: 상행, 1: 하행) |
nodeord |
int |
정류소순번 |
Route
| 필드명 | 타입 | 설명 |
|---|---|---|
routeId |
str |
노선 ID |
routeNo |
str |
노선명 |
routeTp |
int |
노선유형 |
endNodeNm |
str |
종점 |
startNodeNm |
str |
기점 |
endvehicletime |
int |
막차시간 |
startvehicletime |
int |
첫차시간 |
ArrivalInfo
| 필드명 | 타입 | 설명 |
|---|---|---|
nodeId |
str |
정류소 ID |
nodeNm |
str |
정류소명 |
routeId |
str |
노선 ID |
routeNo |
str |
노선명 |
routeTp |
int |
노선유형 |
arrprevstationcnt |
int |
노선유형 |
vehicletp |
str |
차랑유형 |
arrtime |
int |
도착예상시간 |
Vehicle
| 필드명 | 타입 | 설명 |
|---|---|---|
routeId |
str |
노선 ID |
routeNo |
str |
노선명 |
gpsLati |
float |
위도 (WGS84) |
gpsLong |
float |
경도 (WGS84) |
arrtime |
int |
도착예상시간 |
arrprevstationcnt |
int |
노선유형 |
vehicleTp |
str |
차랑유형 |
vehicleNo |
str |
차랑번호 |
지원 API 목록
| 메서드 | 설명 | 매개변수 |
|---|---|---|
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 |
5. 오류 및 이슈
버그 제보 또는 기능 요청은 GitHub 이슈에 등록해주세요.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file unoffical_tago_api-0.12.tar.gz.
File metadata
- Download URL: unoffical_tago_api-0.12.tar.gz
- Upload date:
- Size: 5.5 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7d70a02ac426c87ee86e8af645aab88af469e5b8d80ca8d22879cc6b36617c6d
|
|
| MD5 |
3f44896b9771d176d4f4fa3a46c3d91a
|
|
| BLAKE2b-256 |
6f28442c4a4c317f9ceef872138b7f089dfd38bfd32739ea1e3645c9ab164ace
|
Provenance
The following attestation bundles were made for unoffical_tago_api-0.12.tar.gz:
Publisher:
python-publish.yml on hyuntroll/TAGOBus-API
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
unoffical_tago_api-0.12.tar.gz -
Subject digest:
7d70a02ac426c87ee86e8af645aab88af469e5b8d80ca8d22879cc6b36617c6d - Sigstore transparency entry: 382416965
- Sigstore integration time:
-
Permalink:
hyuntroll/TAGOBus-API@4df7c68a2746016a350486fac68c5ebf1f363dea -
Branch / Tag:
refs/tags/v0.12 - Owner: https://github.com/hyuntroll
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@4df7c68a2746016a350486fac68c5ebf1f363dea -
Trigger Event:
release
-
Statement type:
File details
Details for the file unoffical_tago_api-0.12-py3-none-any.whl.
File metadata
- Download URL: unoffical_tago_api-0.12-py3-none-any.whl
- Upload date:
- Size: 5.5 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5a18690c684736580d19b03da1508219d16ea6a5372ab1f708b4cb9a2b6a668c
|
|
| MD5 |
a5bb8a9a9f25c0ad61ea0e71feaf6197
|
|
| BLAKE2b-256 |
0db6800710b6ba2ecf837bd333d9d605a1d2996973b8a324f28c7acd8126b346
|
Provenance
The following attestation bundles were made for unoffical_tago_api-0.12-py3-none-any.whl:
Publisher:
python-publish.yml on hyuntroll/TAGOBus-API
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
unoffical_tago_api-0.12-py3-none-any.whl -
Subject digest:
5a18690c684736580d19b03da1508219d16ea6a5372ab1f708b4cb9a2b6a668c - Sigstore transparency entry: 382416980
- Sigstore integration time:
-
Permalink:
hyuntroll/TAGOBus-API@4df7c68a2746016a350486fac68c5ebf1f363dea -
Branch / Tag:
refs/tags/v0.12 - Owner: https://github.com/hyuntroll
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@4df7c68a2746016a350486fac68c5ebf1f363dea -
Trigger Event:
release
-
Statement type: