A point-in-time mirror of Washington DC Metro's realtime train schedule
Project description
# WMATA Realtime Snapshot
### Overview
Provide a point-in-time mirror of Washington DC Metro's realtime train schedule
### Installation
1. **Install the package**
```shell
pip install django-wmata-realtime-snapshot
```
1. **Add the app to your django project's settings**
```python
INSTALLED_APPS = (
...
wmata_realtime_snapshot,
)
```
1. **Get a WMATA API key**
If you don't already have a WMATA API account, sign up here: https://developer.wmata.com/signup
Alternatively, you may have success using the demo key provided here: https://developer.wmata.com/Products
Once you have a key, (e.g. `1234IAMAKEY`), you can use it to download a dump of the realtime data.
1. **Download a JSON and/or XML dump from WMATA**
These instructions are for a UNIX based system.
JSON Dump:
```shell
curl https://api.wmata.com/StationPrediction.svc/json/GetPrediction/All?api_key=1234IAMAKEY > realtime_dump.json
```
XML Dump:
```shell
curl https://api.wmata.com/StationPrediction.svc/GetPrediction/All?api_key=1234IAMAKEY > realtime_dump.xml
```
To download both at the same time:
```shell
curl https://api.wmata.com/StationPrediction.svc/json/GetPrediction/All?api_key=1234IAMAKEY > realtime_dump.json & curl https://api.wmata.com/StationPrediction.svc/GetPrediction/All?api_key=1234IAMAKEY > realtime_dump.xml
```
1. **Add your dumps to the Django settings file**
In your Django settings, define the following variables for the dumps you want to serve.
```
WMATA_JSON_DUMP='path/to/realtime_dump.json'
WMATA_XML_DUMP='path/to/realtime_dump.xml'
```
Any endpoint type (json or xml) that does not have a dump file to read will return a json/xml error message when querying the snapshot API:
```json
{"Error": "No JSON resource has been defined. Please read the installation instructions."}
```
```xml
<Error>No XML resource has been defined. Please read the installation instructions.</Error>
```
1. **Add a url endpoint**
```python
url(r'^mirror/', include('wmata_realtime_snapshot.urls', namespace='wmata_realtime_snapshot')),
```
1. **Visit the API**
The API path is the same as the real WMATA API for easy plug-n-play:
```
http://localhost:8000/mirror/StationPrediction.svc/json/GetPrediction/All
http://localhost:8000/mirror/StationPrediction.svc/GetPrediction/B01
http://localhost:8000/mirror/StationPrediction.svc/json/GetPrediction/K08,D13,A05
```
### Overview
Provide a point-in-time mirror of Washington DC Metro's realtime train schedule
### Installation
1. **Install the package**
```shell
pip install django-wmata-realtime-snapshot
```
1. **Add the app to your django project's settings**
```python
INSTALLED_APPS = (
...
wmata_realtime_snapshot,
)
```
1. **Get a WMATA API key**
If you don't already have a WMATA API account, sign up here: https://developer.wmata.com/signup
Alternatively, you may have success using the demo key provided here: https://developer.wmata.com/Products
Once you have a key, (e.g. `1234IAMAKEY`), you can use it to download a dump of the realtime data.
1. **Download a JSON and/or XML dump from WMATA**
These instructions are for a UNIX based system.
JSON Dump:
```shell
curl https://api.wmata.com/StationPrediction.svc/json/GetPrediction/All?api_key=1234IAMAKEY > realtime_dump.json
```
XML Dump:
```shell
curl https://api.wmata.com/StationPrediction.svc/GetPrediction/All?api_key=1234IAMAKEY > realtime_dump.xml
```
To download both at the same time:
```shell
curl https://api.wmata.com/StationPrediction.svc/json/GetPrediction/All?api_key=1234IAMAKEY > realtime_dump.json & curl https://api.wmata.com/StationPrediction.svc/GetPrediction/All?api_key=1234IAMAKEY > realtime_dump.xml
```
1. **Add your dumps to the Django settings file**
In your Django settings, define the following variables for the dumps you want to serve.
```
WMATA_JSON_DUMP='path/to/realtime_dump.json'
WMATA_XML_DUMP='path/to/realtime_dump.xml'
```
Any endpoint type (json or xml) that does not have a dump file to read will return a json/xml error message when querying the snapshot API:
```json
{"Error": "No JSON resource has been defined. Please read the installation instructions."}
```
```xml
<Error>No XML resource has been defined. Please read the installation instructions.</Error>
```
1. **Add a url endpoint**
```python
url(r'^mirror/', include('wmata_realtime_snapshot.urls', namespace='wmata_realtime_snapshot')),
```
1. **Visit the API**
The API path is the same as the real WMATA API for easy plug-n-play:
```
http://localhost:8000/mirror/StationPrediction.svc/json/GetPrediction/All
http://localhost:8000/mirror/StationPrediction.svc/GetPrediction/B01
http://localhost:8000/mirror/StationPrediction.svc/json/GetPrediction/K08,D13,A05
```
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
Close
Hashes for django-wmata-realtime-snapshot-0.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3961107bb0dfb0692eb66f7762ebc618e51d08c906ffde5e2665894127ae7469 |
|
MD5 | a7402e3ea1796aee381e7b084c86c571 |
|
BLAKE2b-256 | bff26d0fb087eaf90fabc14c6faab13a734c29fa94b44df9bc80df3074c36e58 |