Skip to main content

python-citybikes is a python client for the Citybikes API.

About Citybikes

Citybikes is a project about making bike sharing data available to both users and developers. It has a nice and easy to use API, but this package might be useful to projects consuming the API.

python-citybikes must not be confused with pybikes:

  • pybikes is a set of tools to access bike sharing data directly from the providers. It’s the library powering the project and the API. If a network is not supported or does not correctly work, it’s there where the issue or the contribution must be sent.

  • python-citybikes is a python wrapper around the Citybikes API.

Installation

$ pip install python-citybikes

Usage

First instantiate a client

>>>> import citybikes
>>>> client = citybikes.Client()

Get the full list of networks

>>>> networks = list(client.networks)
>>>> len(networks)
458
>>>> networks[0]
{'name': 'Opole Bike', 'href': '/v2/networks/opole-bike', 'location': {'lat
itude': 50.6645, 'city': 'Opole', 'country': 'PL', 'longitude': 17.9276}, '
id': 'opole-bike', 'company': ['Nextbike GmbH']}

Get stations from a network

>>>> len(networks[0].stations)
16
>>>> list(networks[0].stations)[0]
{'timestamp': '2016-11-22T16:05:44.318000Z', 'id': 'd8c9f66260759aeb27445b2
cddf2d6b9', 'name': 'Pętla Autobusowa - Dambonia', 'free_bikes': 7, 'empty_
slots': 3, 'latitude': 50.661775266224, 'extra': {'bike_uids': ['60128', '6
0108', '60063', '60062', '60052', '60037', '60190'], 'number': '6011', 'slo
ts': 10, 'uid': '132115'}, 'longitude': 17.888891100884}

Instantiate a network by id directly

>>>> bicing = citybikes.Network(client, uid='bicing')
>>>> bicing['name']
'Bicing'
>>>> len(bicing.stations)
465

Get a network ordered by distance to lat, lng

>>>> # Lets get the nearest network to NY lat, lng
>>>> net, dist = next(iter(client.networks.near(40.7128, -74.0059)))
>>>> net
{'href': '/v2/networks/citi-bike-nyc', 'id': 'citi-bike-nyc', 'gbfs_href':
'https://gbfs.citibikenyc.com/gbfs/gbfs.json', 'location': {'latitude': 40.
7143528, 'country': 'US', 'longitude': -74.00597309999999, 'city': 'New Yor
k, NY'}, 'company': ['NYC Bike Share, LLC', 'Motivate International, Inc.',
'PBSC Urban Solutions'], 'name': 'Citi Bike'}

Get stations from a network ordered by distance to lat, lng

>>>> # Now, get stations ordered by distance to Manhattan center
>>>> sts = net.stations.near(40.7831, -73.9712)
>>>> for s, dist in sts[:5]:
...     print(s['name'])
...
W 82 St & Central Park West
Central Park West & W 85 St
W 84 St & Columbus Ave
Central Park West & W 76 St
W 89 St & Columbus Ave

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python_citybikes-0.3.3.tar.gz (8.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

python_citybikes-0.3.3-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

File details

Details for the file python_citybikes-0.3.3.tar.gz.

File metadata

  • Download URL: python_citybikes-0.3.3.tar.gz
  • Upload date:
  • Size: 8.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for python_citybikes-0.3.3.tar.gz
Algorithm Hash digest
SHA256 5365656ea956fbc4e09d09ed0d945c23ff81519a64594ddaf9f02926c3b5275e
MD5 5459d3027a94a0302fb5683a85b4e167
BLAKE2b-256 69d377c2960b8c518aec05a4bce8d88ff6f75cca44509be1fc869dc96f1ca72e

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_citybikes-0.3.3.tar.gz:

Publisher: release.yml on eskerda/python-citybikes

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file python_citybikes-0.3.3-py3-none-any.whl.

File metadata

File hashes

Hashes for python_citybikes-0.3.3-py3-none-any.whl
Algorithm Hash digest
SHA256 55546599f7eaacf6b812b3cb3f20c5eb3f1cf52af5a3a26431feb2bf2f784175
MD5 1f3edc5facfec00d290ae0b0638e6290
BLAKE2b-256 8f6dd810487aeda93208e86d53f5ddc5c015aa8f44239b6320d332e9bb3391ac

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_citybikes-0.3.3-py3-none-any.whl:

Publisher: release.yml on eskerda/python-citybikes

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.3.3 This release

2 files

0.3.2

2 files

0.3.1

2 files

0.3.0

2 files

0.2.0

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

4 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page