{ "info": { "author": "Neil Freeman", "author_email": "contact@fakeisthenewreal.org", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Science/Research", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Topic :: Scientific/Engineering :: Atmospheric Science" ], "description": "Buoyant\n-------\n\nBuoyant is a Python wrapper for grabbing buoy data from the `National\nBuoy Data Center `__. It parses XML from a\nNBDC endpoint. This data source isn't fully documented, so there's no\nguarantee of its stability.\n\nThe NBDC provides a `list `__\nand a `map `__ of active buoys.\n\nHello buoy example:\n\n.. code:: python\n\n from buoyant import Buoy\n\n # construct the Buoy object with the station ID\n # It's an alphanumeric code. If its numeric, an integer works fine.\n station = Buoy(13010)\n\n station.name\n # 'Soul'\n # Yes, that buoy is really named Soul.\n\nMore examples:\n\n.. code:: python\n\n from buoyant import Buoy\n\n station = Buoy('lndc1')\n\n station.wind_speed\n # 9.9\n\n station.units['wind_speed']\n # 'kt'\n\n station.lon\n # -23.14\n\n station.coords\n # (20.43, -23.14)\n\n # Get the time the measurements were made.\n station.datetime\n # datetime.datetime(2014, 12, 15, 20, 50, tzinfo=)\n\n # Not all stations report all data.\n station.wave_height\n # raises AttributeError\n\n # Fetches new data. This isn't very useful, since the buoys update only every hour or so\n station.refresh()\n\nImages\n~~~~~~\n\nSome buoys have cameras! If the buoy doesn't have an active camera, a\nplaceholder image provided by the NBDC will be returned.\n\n.. code:: python\n\n station = Buoy(41009)\n\n station.image_url\n # 'http://www.ndbc.noaa.gov/images/buoycam/Z14C_2014_11_01_2200.jpg'\n\n # Save image as a file 'out.jpg'\n station.write_image('out.jpg')\n\n # Get raw image as a BytesIO object (see https://docs.python.org/2/library/io.html)\n station.image\n # <_io.BytesIO object>\n\n station.url\n # 'http://www.ndbc.noaa.gov/station_page.php?station=41009'\n\nMeasurement metadata\n~~~~~~~~~~~~~~~~~~~~\n\nThe occassional buoy reports metadata about its measurements. The\n``Buoy`` object has a meta attribute with this data, if any.\n\n.. code:: python\n\n # Buoy in the Frying Pan Shoals, NC\n frying_pan = Buoy(41013)\n\n frying_pan.pressure\n # 30.1\n\n frying_pan.meta['pressure']\n # {'tendency': 'steady'}\n\nNo data\n~~~~~~~\n\nSometimes buoys don't have recent data. You'll be able to tell two ways.\nFirst, the ``Buoy`` object won't have many attributes. Second, there\nwill be a message. It will say 'No data'.\n\n.. code:: python\n\n station = Buoy('ANRN6')\n station.message\n # 'No data'\n\nMeasurements included\n~~~~~~~~~~~~~~~~~~~~~\n\nAny measurements reported in the NBDC's XML api are included in a\n``Buoy`` object. `Read about the meaning of the different\nmeasurements `__.\n\nMeasurements often included (the text in parentheses is the one used on\nthe NBDC's `measurement descriptions\npage `__):\n\n- air\\_temp (ATMP)\n- average\\_period (APD)\n- dominant\\_period (DPD)\n- mean\\_wave\\_direction (Spectral wave direction)\n- water\\_temp (WTMP)\n- wave\\_height (WVHT)\n- wind\\_direction (WDIR)\n- wind\\_gust (GST)\n- wind\\_speed (WSPD)\n- datetime\n- dewpoint (DEWP)\n- lat (latitude)\n- lon (longitude)\n- pressure (PRES)\n\nWater quality data isn't included in the XML data source. Neither is the\nelevation of the station or the location of the instruments relative to\nthe station.\n\nXML\n~~~\n\nGet the raw XML, if you like XML for some reason. Maybe the package is\nmissing something? If so, submit an\n`issue `__ or `pull\nrequest `__!\n\n.. code:: python\n\n soul = Buoy('13010')\n soul.xml\n '''\n \n 2014-12-16T02:00:00UTC\n 190\n 9.9\n 78.8\n '''\n\nCompatibility\n~~~~~~~~~~~~~\n\nBuoyant is compatible with Python 2 and 3.\n\nLicense\n~~~~~~~\n\nBuoyant is licensed under the\n`GPL `__.", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/fitnr/buoyant", "keywords": "", "license": "GPL", "maintainer": "", "maintainer_email": "", "name": "buoyant", "package_url": "https://pypi.org/project/buoyant/", "platform": "", "project_url": "https://pypi.org/project/buoyant/", "project_urls": { "Homepage": "https://github.com/fitnr/buoyant" }, "release_url": "https://pypi.org/project/buoyant/0.5.2/", "requires_dist": null, "requires_python": "", "summary": "Wrapper for the NOAA National Data Buoy Center", "version": "0.5.2" }, "last_serial": 4113921, "releases": { "0.2.1": [ { "comment_text": "", "digests": { "md5": "8321b6386032de2351da201944f94662", "sha256": "138154b062afe62fcebdbe2059ee19bc43f0c9b514ee5b5a234535652615c2ae" }, "downloads": -1, "filename": "buoyant-0.2.1.tar.gz", "has_sig": false, "md5_digest": "8321b6386032de2351da201944f94662", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3197, "upload_time": "2014-12-16T05:45:27", "url": "https://files.pythonhosted.org/packages/25/24/3c19805b7a68c11ee453b2ae934f0ac8dde88469645af9a20df0be42d09f/buoyant-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "65dd339b4e008cf83d7b63663ba787a0", "sha256": "1dc5addd2e9a6a8f64e82fa2173f3d84635a2228293f01923c834b9f6a23a94c" }, "downloads": -1, "filename": "buoyant-0.2.2.tar.gz", "has_sig": false, "md5_digest": "65dd339b4e008cf83d7b63663ba787a0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4909, "upload_time": "2014-12-16T06:27:42", "url": "https://files.pythonhosted.org/packages/a4/5a/d96890c7aad212f539410fe6e211c7102da90624748330e4e142b84bde0c/buoyant-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "0cfa72abd3cdd313536d0024774ef876", "sha256": "a7c39bd27988898adb1a2c83f30053c965a2762f63d2639ad618978fa9b7cd1a" }, "downloads": -1, "filename": "buoyant-0.2.3-py2-none-any.whl", "has_sig": false, "md5_digest": "0cfa72abd3cdd313536d0024774ef876", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 8087, "upload_time": "2015-02-11T15:00:25", "url": "https://files.pythonhosted.org/packages/56/12/ea86bd1cd0776bd4764ab7edef5dc19f9c88f3246f7a9954f48a16728000/buoyant-0.2.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "48b2aac427de17f64e303e2f2ba7eb40", "sha256": "d379050626a4b7a4789bfe6b2848cbb72d009334a0cf0ce349b6d989b18523ae" }, "downloads": -1, "filename": "buoyant-0.2.3.tar.gz", "has_sig": false, "md5_digest": "48b2aac427de17f64e303e2f2ba7eb40", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4936, "upload_time": "2015-02-11T15:00:22", "url": "https://files.pythonhosted.org/packages/65/63/8f56fe51ca770132180d4b9ffa19bd79ba293f2c4197ad146a5546458fb1/buoyant-0.2.3.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "30d68c8ba1293e5f27fe35672f88eb43", "sha256": "ae7c5db622dc42ae8028eddd92a7bd009f0b7113e53049c1143b2019afbaf98f" }, "downloads": -1, "filename": "buoyant-0.3.0-py2-none-any.whl", "has_sig": false, "md5_digest": "30d68c8ba1293e5f27fe35672f88eb43", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 8267, "upload_time": "2015-03-10T18:30:15", "url": "https://files.pythonhosted.org/packages/2f/7f/1e1151a3913304bf73e9b81d1ea0ef30a3026e6e2f5ca7ecd129b9a7e25a/buoyant-0.3.0-py2-none-any.whl" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "fe3ee594df0b8cccb53f7a0134a6ecac", "sha256": "38d12dc268ad77cb518b7cb32c0b43cd53f19fbbdbebdc8705457317fc6345cc" }, "downloads": -1, "filename": "buoyant-0.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fe3ee594df0b8cccb53f7a0134a6ecac", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8266, "upload_time": "2015-10-01T22:34:34", "url": "https://files.pythonhosted.org/packages/6a/3f/7e00bf0a1ce58aaf96f5b2ffef617fddb1fa7b0deac8d2edd581ce89ae57/buoyant-0.4.0-py2.py3-none-any.whl" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "805634f0bb115ae76d3aedd9c55dabff", "sha256": "f313508663c9cb631f7a65ca6aaf867f3cbb00b9433df4fa27ae7a7e11cd20c8" }, "downloads": -1, "filename": "buoyant-0.4.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "805634f0bb115ae76d3aedd9c55dabff", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8263, "upload_time": "2015-10-13T16:48:56", "url": "https://files.pythonhosted.org/packages/eb/93/ff52037b8e4f7a32b81ebb9d7601701fb8fe81139ab7a4ba89f6f17d52f9/buoyant-0.4.1-py2.py3-none-any.whl" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "a47ebce781a4c71e5e90e7eac6619803", "sha256": "9fbda7e9b7590b176e263207caec3a6eb56262e2967dc10dd272014da5a6eb41" }, "downloads": -1, "filename": "buoyant-0.5.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a47ebce781a4c71e5e90e7eac6619803", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9619, "upload_time": "2017-01-09T23:11:46", "url": "https://files.pythonhosted.org/packages/27/bd/906686b72b55402235ba41e1967350dca6e1439fc881a952bb870ea1d1fc/buoyant-0.5.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d57fa0779c6ce604d0bb0b57f1255fc0", "sha256": "ab3f068092888dfef23d2502876617e6d39e7a001dbcd55b034134c2e5c51313" }, "downloads": -1, "filename": "buoyant-0.5.0.tar.gz", "has_sig": false, "md5_digest": "d57fa0779c6ce604d0bb0b57f1255fc0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7446, "upload_time": "2017-01-09T23:11:47", "url": "https://files.pythonhosted.org/packages/5e/25/75f1eab3957a787a739e68f529b301f430874185f0c369233110b3ec16fa/buoyant-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "6ce8377aabff77d1d555d55c7bd6b962", "sha256": "89172571c9352cd2972a64fd7be5dd019250f4cb47d9f5a0daa08fbab86eb111" }, "downloads": -1, "filename": "buoyant-0.5.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6ce8377aabff77d1d555d55c7bd6b962", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10920, "upload_time": "2017-10-30T14:39:57", "url": "https://files.pythonhosted.org/packages/33/19/f1298bf63af2120b8eb8e6d6eb84f48bce8857881b6392d9e4c474e4bcfd/buoyant-0.5.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f073597a7cce1bcde3a8c38ebcae8f3c", "sha256": "5168781651d42dd059dc7986ab28e202a9ad35f015a08f714f5e1a02e06c62a6" }, "downloads": -1, "filename": "buoyant-0.5.1.tar.gz", "has_sig": false, "md5_digest": "f073597a7cce1bcde3a8c38ebcae8f3c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7611, "upload_time": "2017-10-30T14:40:02", "url": "https://files.pythonhosted.org/packages/c2/ca/50f7d6b80dcdc345bfeec3ff683d76157d4ef671dbc355528a3873f9c10f/buoyant-0.5.1.tar.gz" } ], "0.5.2": [ { "comment_text": "", "digests": { "md5": "a3fa2f38e46aa96ad790759e30f26058", "sha256": "e899b436d92301cddaf7be245a00bd926084d94c53ffc0449feffde671bdcdc2" }, "downloads": -1, "filename": "buoyant-0.5.2--py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a3fa2f38e46aa96ad790759e30f26058", "packagetype": "bdist_wheel", "python_version": "-py2.py3", "requires_python": null, "size": 10925, "upload_time": "2018-07-29T15:18:59", "url": "https://files.pythonhosted.org/packages/14/82/a702df669dac3603960c9b9028719a14a04fe03ff071d4e5983c6979534f/buoyant-0.5.2--py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "465054a64622880c7cdf17f4ef755dc0", "sha256": "8825742fec7048e77ca88cd2d8851ef2adad19ba38ca19927ad9b6d0325783b9" }, "downloads": -1, "filename": "buoyant-0.5.2.tar.gz", "has_sig": false, "md5_digest": "465054a64622880c7cdf17f4ef755dc0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7627, "upload_time": "2018-07-29T15:17:02", "url": "https://files.pythonhosted.org/packages/0d/e5/d421443b85476b046510eee78f8a8aebc6e7335cca00cf4deaf671fd1166/buoyant-0.5.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a3fa2f38e46aa96ad790759e30f26058", "sha256": "e899b436d92301cddaf7be245a00bd926084d94c53ffc0449feffde671bdcdc2" }, "downloads": -1, "filename": "buoyant-0.5.2--py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a3fa2f38e46aa96ad790759e30f26058", "packagetype": "bdist_wheel", "python_version": "-py2.py3", "requires_python": null, "size": 10925, "upload_time": "2018-07-29T15:18:59", "url": "https://files.pythonhosted.org/packages/14/82/a702df669dac3603960c9b9028719a14a04fe03ff071d4e5983c6979534f/buoyant-0.5.2--py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "465054a64622880c7cdf17f4ef755dc0", "sha256": "8825742fec7048e77ca88cd2d8851ef2adad19ba38ca19927ad9b6d0325783b9" }, "downloads": -1, "filename": "buoyant-0.5.2.tar.gz", "has_sig": false, "md5_digest": "465054a64622880c7cdf17f4ef755dc0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7627, "upload_time": "2018-07-29T15:17:02", "url": "https://files.pythonhosted.org/packages/0d/e5/d421443b85476b046510eee78f8a8aebc6e7335cca00cf4deaf671fd1166/buoyant-0.5.2.tar.gz" } ] }