Get started¶
Terminology¶
In pyHaFAS, we often use the following terms. Please read them, so you can understand the documentation and project better.
Most other pyHaFAS-specific words are defined in the Glossary. If one of these words is used in this documentation it’s marked as a link with a superscript G as follows: profileG
Term |
Meaning |
---|---|
profile |
Customization for each HaFAS deployment - Contains the endpoint, tokens and possible changes for the deployment |
FPTF |
Abbreviation for Friendly Public Transport Format - Used as the basis for returned data |
Station Board |
Generalization for |
Installation¶
You only need to install the pyhafas package, for example using pip:
$ pip install pyhafas
Sample Starter Code¶
Below is a sample code for easy usage. It has multiple parts:
It imports the
HafasClient
and theDBProfile
of pyHaFAS and creates theHafasClient
with the profileG. TheDBProfile
is the profileG belonging to the HaFAS deployment of Deutsche Bahn.It searches for locations (stations) with the term “Berlin” and prints the result
It searches for departing trains at Berlin Central Station. Every station is identified by an ID, which (in this case 8011160) can be obtained by a location-request with pyhafas.
import datetime
from pyhafas import HafasClient
from pyhafas.profile import DBProfile
client = HafasClient(DBProfile())
print(client.locations("Berlin"))
print(client.departures(
station='8011160',
date=datetime.datetime.now(),
max_trips=5
))
What’s next?¶
For a good start with pyHaFAS you should go on reading the documentation. Especially the pages Usage Examples and Profiles are a good start.