pybikes icon indicating copy to clipboard operation
pybikes copied to clipboard

Add OV-fiets (Dutch Railways)

Open ewooonk opened this issue 7 years ago • 2 comments

Bicycle rental service of the Dutch Railways (250+ locations, 12.000+ bikes)

API endpoint: http://fiets.openov.nl/locaties.json

Example JSON Object.

{"infoImages": [], "name": "UTT - OV-fiets - Utrecht Terwijde", "extra": {"fetchTime": 1518553706, "rentalBikes": "8", "locationCode": "utt001"}, "extraInfo": [], "apps": [], "sites": [], "lat": 52.10017, "link": {"params": {}, "uri": "https://places.ns-mlab.nl/api/v2/places/station-retail/Zelfservice%20OV-fiets%20uitgiftepunt-utt001"}, "stationCode": "UTT", "openingHours": [{"dayOfWeek": 1, "endTime": "00:00", "closesNextDay": true, "startTime": "00:00"}, {"dayOfWeek": 2, "endTime": "00:00", "closesNextDay": true, "startTime": "00:00"}, {"dayOfWeek": 3, "endTime": "00:00", "closesNextDay": true, "startTime": "00:00"}, {"dayOfWeek": 4, "endTime": "00:00", "closesNextDay": true, "startTime": "00:00"}, {"dayOfWeek": 5, "endTime": "00:00", "closesNextDay": true, "startTime": "00:00"}, {"dayOfWeek": 6, "endTime": "00:00", "closesNextDay": true, "startTime": "00:00"}, {"dayOfWeek": 7, "endTime": "00:00", "closesNextDay": true, "startTime": "00:00"}], "lng": 5.04424, "open": "Yes", "thumbnail": {"params": {}, "uri": "api/v1/location/thumbnail/52.10017,5.04424"}, "description": "Utrecht Terwijde"},

ewooonk avatar Feb 13 '18 20:02 ewooonk

I propose to use a simple scrapper, e.g.

https://github.com/eskerda/pybikes/blob/master/pybikes/open_source_bike_share.py

with

for station in data:

            longitude = float(station['lng'])
            latitude = float(station['lat'])

            name = station['description']
            free = None
            bikes = int(station['rentalBikes']) 

ewooonk avatar Feb 13 '18 20:02 ewooonk

Hi @ewooonk

You presumably moved on to new topics since your last comment. However I'd like to share a little update on this topic with you.

Since you suggested the integration of OV Fiets back in 2018 the provider added GBFS feeds in a public directory at https://gbfs.openov.nl/ovfiets.

I'm currently working on the integration using the GBFS feeds instead of the data source you proposed. I favor GBFS as it's a popular data format an well established with pybikes.

Regards,

Jean-Luc

eUgEntOptIc44 avatar Dec 27 '22 18:12 eUgEntOptIc44