{ "info": { "author": "Dillon Dixon", "author_email": "dillondixon@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "python-caltrain\n===============\n\n|PyPI Version| |Python Versions| |Coverage| |Build Status|\n\nA library for working with raw Bay Area Caltrain scheduling data in\nPython.\n\nWhat is the purpose of ``python-caltrain``?\n-------------------------------------------\n\nThe purpose of this library is for easily making queries against the\nCaltrain schedule such as:\n\n- The cost of travel from *Sunnyvale* to *South San Francisco* station.\n- The next train(s) from *22nd Street* to *San Jose*.\n- The duration of travel between *San Mateo* and *Menlo Park* on a\n *Limited* train.\n\nDoes this library require an internet connection?\n-------------------------------------------------\n\n``python-caltrain`` does **not** require an internet connection, making\nit easy to embed into offline applications. It relies on the `Caltrain\nGTFS\nfile `__,\nwhich is updated usually a couple of times per year at most. This\nlibrary will update in accordance with announcements from Caltrain. The\nversion number is **year.month.rev** to signify how recent it is.\n\ne.g. ``2016.4.0`` means the library is at revision 0 and uses the *April\n2016* GTFS file.\n\nHow do I get it?\n----------------\n\nInstall via pip:\n\n::\n\n pip install python-caltrain\n\nHow do I use it?\n----------------\n\nLet's find the next train from Sunnyvale to San Francisco 4th and King.\n\n.. code:: python\n\n >> from python_caltrain import Caltrain\n >> c = Caltrain()\n >> n = c.next_trips('sunnyvale', 'sf')[0]\n >> n.departure\n datetime.time(11, 26)\n >> n.arrival\n datetime.time(12, 43)\n >> n.duration\n datetime.timedelta(0, 4620)\n\nNext train is at 12:43 PM from sunnyvale. Let's see what train number\nthat is.\n\n.. code:: python\n\n >> n.train.name\n '143'\n\nWhat kind of train is it?\n\n.. code:: python\n\n >> str(n.train.kind)\n 'Local'\n\nCan you print a summary of the trip?\n\n.. code:: python\n\n >> str(n)\n [Local 143] Departs: 11:26:00, Arrives: 12:43:00 (1:17:00)\n\nDoes that train stop at San Mateo? If so, when?\n\n.. code:: python\n\n >> san_mateo = c.get_station('san mateo')\n >> san_mateo in n.train.stops\n True\n >> n.train.stops[san_mateo].arrival\n datetime.time(12, 8)\n\nHow much is this trip going to cost?\n\n.. code:: python\n\n >> c.fare_between('sunnyvale', 'san francisco')\n (7, 75)\n\nMy goodness, that's quite expensive...\n\nWhat if I want to know the next train after some point in the past or\nfuture?\n\n.. code:: python\n\n >> from datetime import datetime\n >> d = ... # Your date time here\n >> n = c.next_trips('sunnyvale', 'sf', after=d)\n\nStation names do not need to be sanitized. The\n``Caltrain.get_station(...)``, ``Caltrain.next_trip(...)``, and\n``Caltrain.fare_between(...)`` functions all perform sanitization\nthemselves and can automatically resolve alternate common names for\nstations.\n\nFor example, ``sf``, ``sanfrancisco``, ``san fran``,\n``san francisco station`` are all understood as the same station. Same\nwith ``22nd``, ``Twenty-Second``, ``twenty second street``, and\n``22nd str``.\n\n.. |PyPI Version| image:: https://badge.fury.io/py/python-caltrain.svg\n :target: https://badge.fury.io/py/python-caltrain\n\n.. |Python Versions| image:: https://img.shields.io/pypi/pyversions/python-caltrain.svg\n :target: https://github.com/ownaginatious/python-caltrain/blob/master/setup.py\n\n.. |Build Status| image:: https://travis-ci.org/ownaginatious/python-caltrain.svg?branch=master\n :target: https://travis-ci.org/ownaginatious/python-caltrain/\n\n.. |Coverage| image:: https://codecov.io/gh/ownaginatious/python-caltrain/branch/master/graph/badge.svg\n :target: https://codecov.io/gh/ownaginatious/python-caltrain\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/ownaginatious/python-caltrain", "keywords": "caltrain,python", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "python-caltrain", "package_url": "https://pypi.org/project/python-caltrain/", "platform": "", "project_url": "https://pypi.org/project/python-caltrain/", "project_urls": { "Homepage": "https://github.com/ownaginatious/python-caltrain" }, "release_url": "https://pypi.org/project/python-caltrain/2019.4.1/", "requires_dist": null, "requires_python": "", "summary": "A library for working with raw Caltrain scheduling data in Python", "version": "2019.4.1" }, "last_serial": 5733984, "releases": { "2016.4.0": [ { "comment_text": "", "digests": { "md5": "7dc2ac913781651b2964fd5773c53170", "sha256": "b14ecde1018c6dc74bcd48da02eb116082f9a8d57d79935d7eb9742951aae7ae" }, "downloads": -1, "filename": "python-caltrain-2016.4.0.tar.gz", "has_sig": false, "md5_digest": "7dc2ac913781651b2964fd5773c53170", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68714, "upload_time": "2016-04-18T19:25:39", "url": "https://files.pythonhosted.org/packages/18/7b/06b69d39139090dcf0051547be082a7d0edcb1612c265539c471ed7d9fe0/python-caltrain-2016.4.0.tar.gz" } ], "2016.4.1": [ { "comment_text": "", "digests": { "md5": "2ed5ffa852d3893494a83d9dabe7a263", "sha256": "f9118f050066ff16491fa2e3434c345ccbf5525d04cb847aba3fcc8c3675e5ce" }, "downloads": -1, "filename": "python-caltrain-2016.4.1.tar.gz", "has_sig": false, "md5_digest": "2ed5ffa852d3893494a83d9dabe7a263", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68354, "upload_time": "2016-04-18T20:06:24", "url": "https://files.pythonhosted.org/packages/31/4a/ad37a61c1df5f3c5915cf4eb6f00254d04c0d6f595d36655743d6bfb6378/python-caltrain-2016.4.1.tar.gz" } ], "2016.4.2": [ { "comment_text": "", "digests": { "md5": "062d3187050d651a7e45459a128b8217", "sha256": "8937d747d7370f20a61a92934f1cdd37868560c8f2e84473a492aa42af680d30" }, "downloads": -1, "filename": "python-caltrain-2016.4.2.tar.gz", "has_sig": false, "md5_digest": "062d3187050d651a7e45459a128b8217", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68548, "upload_time": "2016-04-18T21:33:45", "url": "https://files.pythonhosted.org/packages/51/c0/05c2ba7378e8ef7d912494f89e21b82481120558014c075afed3cebed5d9/python-caltrain-2016.4.2.tar.gz" } ], "2016.4.3": [ { "comment_text": "", "digests": { "md5": "b5c8223b8946e7daf028f5d4d36b806b", "sha256": "35447bf0b24b340bfee04b3e23635682b0e902d0752eb3fc6ac4fab9e922df78" }, "downloads": -1, "filename": "python-caltrain-2016.4.3.tar.gz", "has_sig": false, "md5_digest": "b5c8223b8946e7daf028f5d4d36b806b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68783, "upload_time": "2016-04-19T03:09:45", "url": "https://files.pythonhosted.org/packages/a0/f7/e48db9c95d9de21f8d5ebf1fb8db9f33bcea3f1b588413759764014625ea/python-caltrain-2016.4.3.tar.gz" } ], "2016.4.4": [ { "comment_text": "", "digests": { "md5": "db5049ce78b22df0edccc8b37523d0b0", "sha256": "459577050be9e4024301fb56735c989a870f43d9ffe2a3fe84a71ea66d38cccd" }, "downloads": -1, "filename": "python-caltrain-2016.4.4.tar.gz", "has_sig": false, "md5_digest": "db5049ce78b22df0edccc8b37523d0b0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68792, "upload_time": "2016-04-19T03:14:14", "url": "https://files.pythonhosted.org/packages/95/40/1be2c317bd3620db8617c17053a0750c4659c68dbdafbbf875e1e2699b17/python-caltrain-2016.4.4.tar.gz" } ], "2016.4.5": [ { "comment_text": "", "digests": { "md5": "815b6df46d8a4ea487b77ec504377843", "sha256": "225104363ceb9123f53d3e5fd4d01b07f75c7b7c026822ef0c5ed88e86dbf97f" }, "downloads": -1, "filename": "python-caltrain-2016.4.5.tar.gz", "has_sig": false, "md5_digest": "815b6df46d8a4ea487b77ec504377843", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68694, "upload_time": "2016-04-19T17:30:32", "url": "https://files.pythonhosted.org/packages/12/12/f6bd8cc28c0c3ca32595cc8c7184912558899489804da4ccec6f2bdf5464/python-caltrain-2016.4.5.tar.gz" } ], "2016.4.5.post2": [ { "comment_text": "", "digests": { "md5": "b1a6289cc6afba9b82911487de3eeef6", "sha256": "e48de8c293dcd1d690eb5b6c4c1128b1dc711c62869a8c65294973f069e5cc2a" }, "downloads": -1, "filename": "python-caltrain-2016.4.5.post2.tar.gz", "has_sig": false, "md5_digest": "b1a6289cc6afba9b82911487de3eeef6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 85292, "upload_time": "2016-04-23T00:53:31", "url": "https://files.pythonhosted.org/packages/86/52/4ab1c3692f0fd230724701ee16944095263200a9facc23379c4153f218d4/python-caltrain-2016.4.5.post2.tar.gz" } ], "2016.4.5.post3": [ { "comment_text": "", "digests": { "md5": "7caf57e23dc393aee229bb7acf3e402a", "sha256": "5ee95396cb2212e0b5b750e88a72dd2a548caa91143ae2322eea8c954c88cc84" }, "downloads": -1, "filename": "python-caltrain-2016.4.5.post3.tar.gz", "has_sig": false, "md5_digest": "7caf57e23dc393aee229bb7acf3e402a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 85252, "upload_time": "2016-04-23T00:54:49", "url": "https://files.pythonhosted.org/packages/64/4e/3bca01785afebd3e84d1cabffd81144533ad1703c81f23a7a7886f26bed5/python-caltrain-2016.4.5.post3.tar.gz" } ], "2016.4.5.post6": [ { "comment_text": "", "digests": { "md5": "5d7cfbfaa67b1715c50001ae59ce7df2", "sha256": "8f4030cb1872d14112c86e9c31b9a7bbdcd926df5325d1203084ffba3d180f22" }, "downloads": -1, "filename": "python-caltrain-2016.4.5.post6.tar.gz", "has_sig": false, "md5_digest": "5d7cfbfaa67b1715c50001ae59ce7df2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 85338, "upload_time": "2016-04-29T00:43:15", "url": "https://files.pythonhosted.org/packages/96/ef/4ab17e52569ba6c64f0d4a995c32b3e55c52ab12581ca4f56d85a3783867/python-caltrain-2016.4.5.post6.tar.gz" } ], "2016.4.5.post7": [ { "comment_text": "", "digests": { "md5": "700ff87335026445d5c96ae0a187f775", "sha256": "2bd351f8ea7a4b79d7e1e997501f4aff2fde60c78b8f4a7f27f70ecec2d75c69" }, "downloads": -1, "filename": "python-caltrain-2016.4.5.post7.tar.gz", "has_sig": false, "md5_digest": "700ff87335026445d5c96ae0a187f775", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 85711, "upload_time": "2016-04-29T04:49:11", "url": "https://files.pythonhosted.org/packages/30/52/39d02c280cd3497d8b43275736e5080c75524a644eac66f415bda2b68612/python-caltrain-2016.4.5.post7.tar.gz" } ], "2017.7.0": [ { "comment_text": "", "digests": { "md5": "4e7349150243a39686322b88c0ffbd94", "sha256": "93e1e2ec060c7662cc93ece741c5f4359d7a66d6e1d92c075bdd83ed675b54f9" }, "downloads": -1, "filename": "python-caltrain-2017.7.0.tar.gz", "has_sig": false, "md5_digest": "4e7349150243a39686322b88c0ffbd94", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 94139, "upload_time": "2017-07-25T23:47:49", "url": "https://files.pythonhosted.org/packages/b7/0d/85734db987d2b120fdf7f65f05753ab04eecac7751e3ddc9b8634b6c8b97/python-caltrain-2017.7.0.tar.gz" } ], "2017.7.1": [ { "comment_text": "", "digests": { "md5": "0505e00f7ec5d69b95b87cdea6361ced", "sha256": "2c716c76e5e0cb59a10d2aa8b41f91ece260de247ef017747fce25f4f4598939" }, "downloads": -1, "filename": "python-caltrain-2017.7.1.tar.gz", "has_sig": false, "md5_digest": "0505e00f7ec5d69b95b87cdea6361ced", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 95157, "upload_time": "2018-01-09T00:42:18", "url": "https://files.pythonhosted.org/packages/fc/48/59d05d72e26d2cabdda1ef1f9efe1a7f49af2c40c7eb64e24544174ee43b/python-caltrain-2017.7.1.tar.gz" } ], "2019.4.0": [ { "comment_text": "", "digests": { "md5": "ddec41ec8d31e2c2417d2be29d1712db", "sha256": "abe9b8a49408756c1bb892438706b39043909a0a0503fd13c997dc866767fff5" }, "downloads": -1, "filename": "python_caltrain-2019.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "ddec41ec8d31e2c2417d2be29d1712db", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 444367, "upload_time": "2019-08-27T01:38:46", "url": "https://files.pythonhosted.org/packages/70/98/5e68913efd168315c54744ac8e6e7bd2d480fc274d7ce599f8b41a236975/python_caltrain-2019.4.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "97618da159f3b5ad439aaf2efc5c2285", "sha256": "cbdeeb49aa0e097bc8d1db534b7727d314990a9fb369187dc64be9c1d3751e17" }, "downloads": -1, "filename": "python-caltrain-2019.4.0.tar.gz", "has_sig": false, "md5_digest": "97618da159f3b5ad439aaf2efc5c2285", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 446109, "upload_time": "2019-08-27T01:38:48", "url": "https://files.pythonhosted.org/packages/6a/a3/9f747dc59cd4a520044da072f29cfea1e145c0d4643642370e80294fe6f3/python-caltrain-2019.4.0.tar.gz" } ], "2019.4.1": [ { "comment_text": "", "digests": { "md5": "0e719d39d644ed5097a350fb57a8a059", "sha256": "043f7ae424daea0044e7e2f3b6f48d896d086e5ffd79ae0338832c763da3c155" }, "downloads": -1, "filename": "python_caltrain-2019.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "0e719d39d644ed5097a350fb57a8a059", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 445817, "upload_time": "2019-08-27T01:51:09", "url": "https://files.pythonhosted.org/packages/4a/57/18c93324c3b5bb840e62c6b52e358e644ead17866bbcb259088a1c99fccb/python_caltrain-2019.4.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fd40e3a7d645aa2904369b59a0d55c66", "sha256": "5d6a04f98e8bbb355d0aa1b93e10b2136bba4fa7572bd614dac4b1f6328d685c" }, "downloads": -1, "filename": "python-caltrain-2019.4.1.tar.gz", "has_sig": false, "md5_digest": "fd40e3a7d645aa2904369b59a0d55c66", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 448287, "upload_time": "2019-08-27T01:51:11", "url": "https://files.pythonhosted.org/packages/04/96/a496501a4146be49c723503a38f066d7374e614da6183c8dc89b288ee2f7/python-caltrain-2019.4.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0e719d39d644ed5097a350fb57a8a059", "sha256": "043f7ae424daea0044e7e2f3b6f48d896d086e5ffd79ae0338832c763da3c155" }, "downloads": -1, "filename": "python_caltrain-2019.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "0e719d39d644ed5097a350fb57a8a059", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 445817, "upload_time": "2019-08-27T01:51:09", "url": "https://files.pythonhosted.org/packages/4a/57/18c93324c3b5bb840e62c6b52e358e644ead17866bbcb259088a1c99fccb/python_caltrain-2019.4.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fd40e3a7d645aa2904369b59a0d55c66", "sha256": "5d6a04f98e8bbb355d0aa1b93e10b2136bba4fa7572bd614dac4b1f6328d685c" }, "downloads": -1, "filename": "python-caltrain-2019.4.1.tar.gz", "has_sig": false, "md5_digest": "fd40e3a7d645aa2904369b59a0d55c66", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 448287, "upload_time": "2019-08-27T01:51:11", "url": "https://files.pythonhosted.org/packages/04/96/a496501a4146be49c723503a38f066d7374e614da6183c8dc89b288ee2f7/python-caltrain-2019.4.1.tar.gz" } ] }