iRail / iRail

iRail API / scraper
http://api.irail.be
GNU Affero General Public License v3.0
121 stars 27 forks source link

Adding international trains #501

Open koeleboe opened 1 year ago

koeleboe commented 1 year ago

As already described in another issue, vehicle data is not available for international traffic. However:

By checking the liveboard, you can see the international trains. From that, you can find the starting and ending point of the international train (for example: EUR9364 to Paris Nord.

As far as I know, these international trains are not available in the GTFS file, but you can "guess" where the train is coming from, as international trains do have specific arrival/departure points (Brussels South - Amsterdam Central - Paris Nord - Dusseldorf Hbf etc).

Based on this information you can get the vehicle data, which gives us a 'JourneyDetailRef': {'ref': '1|12456|0|80|5112023'}.

https://mobile-riv.api.belgianrail.be/riv/v1.0/journey?trainFilter=EUR9364&originExtId=8814001&destExtId=8727100

This can then be used for further purposes (finding the intermediate stops etc):

https://mobile-riv.api.belgianrail.be/riv/v1.0/journey/detail?id=1%7C12456%7C0%7C80%7C5112023&lang=nl

Bertware commented 1 year ago

Another (possibly more robust) way of implementing this would be obtaining data directly from SNCF (TGV/Ouigo), DB (ICE) and Eurostar (Thalys/Eurostar), then querying that exact path. On the other hand, that would add another three API dependencies which can break.

koeleboe commented 1 year ago

As for Eurostar, there is one GTFS file, that normally doesn't change a lot according to the website. I however have had no time to check further. https://transport.data.gouv.fr/resources/80396#validation-report

jncn commented 11 months ago

I would love to have/restore this kind of info.