Get realtime info on stop passages of De Lijn (api.delijn.be)
Project description
pydelijn
A Python package to retrieve realtime data of passages at stops of De Lijn, the public transport company in Flanders (Belgium)
Main purpose at the moment is to feed a sensor in Home-Assistant
Important note: a developer account needs to be created at https://data.delijn.be to generate a subscription key for the api's.
Install
pip install pydelijn
Example usage
"""Example usage of pydelijn."""
import asyncio
import aiohttp
from pydelijn.api import Passages
async def test_pydelijn():
"""Example usage of pydelijn."""
subscriptionkey = '<put your data.delijn.be subscriptionkey here>'
stopid = 200551
maxpassages = 10
custom_session = aiohttp.ClientSession()
delijndata = Passages(LOOP,
stopid,
maxpassages,
subscriptionkey,
custom_session,
True)
await delijndata.get_passages()
await custom_session.close()
print_data(delijndata)
def print_data(delijndata):
"""Pretty Print the data."""
for line in delijndata.passages:
print("----------------------------------------")
print("Passage #: %s" % (line['passage']))
print("Stop Name: %s" % (line['stopname']))
print("Line Number (technical): %s" % (line['line_number']))
print("Line Number (public): %s" % (line['line_number_public']))
print("Line Description: %s" % (line['line_desc']))
print("Line Transport Type: %s" % (line['line_transport_type']))
print("Direction: %s" % (line['direction']))
print("Final Destination: %s" % (line['final_destination']))
print("Due At (schedule): %s" % (line['due_at_schedule']))
print("Due At (real-time): %s" % (line['due_at_realtime']))
print("Due In (min): %s" % (line['due_in_min']))
print("Line Colour - Front: %s - Hex: %s" % (
line['line_number_colourFront'],
line['line_number_colourFrontHex']))
print("Line Colour - Back: %s - Hex: %s" % (
line['line_number_colourBack'],
line['line_number_colourBackHex']))
print("Line Colour - Front Border: %s - Hex: %s" % (
line['line_number_colourFrontBorder'],
line['line_number_colourFrontBorderHex']))
print("Line Colour - Back Border: %s - Hex: %s" % (
line['line_number_colourBackBorder'],
line['line_number_colourBackBorderHex']))
LOOP = asyncio.get_event_loop()
LOOP.run_until_complete(test_pydelijn())
LOOP.close()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pydelijn-1.1.0.tar.gz
(6.4 kB
view hashes)