This commit is contained in:
Dawid Pietrykowski 2025-02-13 21:52:26 +01:00
parent 32e3634462
commit f1b75e7dae
3 changed files with 33 additions and 8 deletions

View File

@ -1,7 +1,8 @@
### API documentation
##### ZTM API - realtime data (delays / positions)
##### ZTM API docs
https://www.ztm.poznan.pl/otwarte-dane/dla-deweloperow/
##### Poznan PCSS API - static timetables / trips
https://egov.psnc.pl/node/29#przystanki
##### ZTM API - static data (routes)
curl 'https://www.ztm.poznan.pl/pl/dla-deweloperow/getGTFSFile' -o routes.pb
##### ZTM API - realtime data (delays)
curl 'https://www.ztm.poznan.pl/pl/dla-deweloperow/getGtfsRtFile?file=trip_updates.pb' -o trip_updates.pb

10
pyproject.toml Normal file
View File

@ -0,0 +1,10 @@
[project]
name = "ha-poz-timetable"
version = "0.1.0"
description = "Poznan ZTM API integration"
readme = "README.md"
requires-python = ">=3.10"
dependencies = [
"requests",
"gtfs-realtime-bindings"
]

View File

@ -2,8 +2,22 @@ from google.transit import gtfs_realtime_pb2
import requests
feed = gtfs_realtime_pb2.FeedMessage()
response = requests.get('https://www.ztm.poznan.pl/pl/dla-deweloperow/getGtfsRtFile?file=trip_updates.pb')
feed.ParseFromString(response.content)
# response = requests.get('https://www.ztm.poznan.pl/pl/dla-deweloperow/getGtfsRtFile?file=trip_updates.pb')
# response = ''
# with open('trip_updates.pb', 'rb') as f:
# response = f.read()
# feed.ParseFromString(response)
# for entity in feed.entity:
# print(entity)
# if entity.HasField('trip_update'):
# print(entity.trip_update)
with open('feeds.pb', 'rb') as f:
response = f.read()
feed = gtfs_realtime_pb2.FeedMessage()
feed.ParseFromString(response)
for entity in feed.entity:
if entity.HasField('trip_update'):
print(entity.trip_update)
print(entity)
# if entity.HasField('trip_update'):
# print(entity.trip_update)