{ "info": { "author": "Andres Buritica", "author_email": "andres@thelinuxkid.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python", "Programming Language :: Python :: 2.7" ], "description": "=========\npygeocode\n=========\n\nDescription\n===========\n\npygeocode leverages multiple public geocoding APIs including\nGoogle's Geocoding API and Yahoo's Place Finder. Having several\nAPIs available is specially useful when the user has reached one\nAPI's rate limit or when an API returns ambiguous results, or\nno results at all.\n\nInstallation\n============\n\nInstall using pip::\n\n pip install pyusps\n\nor easy_install::\n\n easy_install pyusps\n\nExamples\n========\n\nUsing Google's Geocoding API::\n\n from pygeocode import geocoder\n\n address = '1600 Amphitheatre Pkwy, Mountain View, CA'\n res = geocoder.geocode_google(address)\n print res['lat'], res['lng']\n\n\nUsing Yahoo's Place Finder API::\n\n from pygeocode import geocoder\n\n app_id = \n address = '1600 Amphitheatre Pkwy, Mountain View, CA'\n res = geocoder.geocode_yahoo(address, app_id)\n print res['lat'], res['lng']\n\n\nFull example::\n\n import optparse\n import functools\n import logging\n\n from pygeocode import geocoder\n\n log = logging.getLogger(__name__)\n\n def main(address, appid=None):\n yahoo_geocoder = functools.partial(\n geocoder.geocode_yahoo,\n appid=appid,\n )\n geocoders = [yahoo_geocoder, geocoder.geocode_google]\n for geocoder_ in geocoders:\n try:\n res = geocoder_(address)\n except geocoder.GeocoderError, e:\n log.error(str(e))\n else:\n return res\n\n if __name__ == '__main__':\n parser = optparse.OptionParser(\n usage='%prog ADDRESS [OPTS]',\n )\n parser.add_option(\n '--yahoo-appid',\n help='The Yahoo Application ID to be used in the API call',\n )\n parser.add_option(\n '-v', '--verbose',\n help='Verbose mode [default %default]',\n action=\"store_true\", dest=\"verbose\"\n )\n parser.set_defaults(\n verbose=False,\n )\n\n options, args = parser.parse_args()\n try:\n (address,) = args\n except ValueError:\n parser.error('Wrong number of arguments.')\n\n logging.basicConfig(\n level=logging.DEBUG if options.verbose else logging.INFO,\n format='%(asctime)s.%(msecs)03d %(name)s: %(levelname)s: %(message)s',\n datefmt='%Y-%m-%dT%H:%M:%S',\n )\n\n res = main(address, appid=options.yahoo_appid)\n\n if res:\n out = '\"{address}\" is at coordinates {lat},{lng}'.format(\n address=address,\n lat=res['lat'],\n lng=res['lng'],\n )\n else:\n out = 'No results found for \"{address}\"'.format(\n address=address,\n )\n\n print out\n\nDeveloping\n==========\n\nExternal dependencies\n---------------------\n\n - python-dev\n - python-setuptools\n - python-virtualenv\n\nSetup\n-----\n\nTo start developing run the following commands from the project's base\ndirectory. You can download the source from\nhttps://github.com/thelinuxkid/pygeocode::\n\n # I like to install the virtual environment in a hidden repo.\n virtualenv .virtual\n # I leave the magic to Ruby developers (.virtual/bin/activate)\n .virtual/bin/python setup.py develop\n # At this point, pygeocode will already be in easy-install.pth.\n # So, pip will not attempt to download it\n .virtual/bin/pip install pygeocode[test]\n\nIf you like to use ipython you can install it with the dev\nrequirement::\n\n .virtual/bin/pip install pygeocode[dev]\n\nTesting\n-------\n\nTo run the unit-tests run the following command from the project's\nbase directory::\n\n .virtual/bin/nosetests", "description_content_type": null, "docs_url": "https://pythonhosted.org/pygeocode/", "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/thelinuxkid/pygeocode", "keywords": null, "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "pygeocode", "package_url": "https://pypi.org/project/pygeocode/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/pygeocode/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/thelinuxkid/pygeocode" }, "release_url": "https://pypi.org/project/pygeocode/0.0.5/", "requires_dist": null, "requires_python": null, "summary": "pygeocode -- Wrapper for several public geocoding APIs", "version": "0.0.5" }, "last_serial": 769602, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "df6ec68917aada92b16cd9b14aeaa1db", "sha256": "5e45817087f08620697ab87df6b7ed1da6210acc3460392f9bb25cda9b877321" }, "downloads": -1, "filename": "pygeocode-0.0.1.tar.gz", "has_sig": false, "md5_digest": "df6ec68917aada92b16cd9b14aeaa1db", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4076, "upload_time": "2012-02-16T08:29:31", "url": "https://files.pythonhosted.org/packages/c1/39/d490e495aef3b83b95b46a64bf9113f92641064bf87581cffdca74e793fd/pygeocode-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "96ad985dd45e2ff2a5c58708eee3e387", "sha256": "dd4ee410e3db139706649cfb9a70d9b7f9478fc9a84f871710c10c8e3a304c7d" }, "downloads": -1, "filename": "pygeocode-0.0.2.tar.gz", "has_sig": false, "md5_digest": "96ad985dd45e2ff2a5c58708eee3e387", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4069, "upload_time": "2012-10-20T03:28:03", "url": "https://files.pythonhosted.org/packages/b9/61/209bd0497f71580a692f7d0fe3e7a1ea2e23f01d5d118f159119607255d5/pygeocode-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "9b7ceed96cb0fe79ef97800dcbf1758e", "sha256": "769c666e703e7f9b1d2c0945ee30a2f9c6ea407e014e1d40e83d4e9f1410495c" }, "downloads": -1, "filename": "pygeocode-0.0.3.tar.gz", "has_sig": false, "md5_digest": "9b7ceed96cb0fe79ef97800dcbf1758e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5721, "upload_time": "2012-10-20T06:25:48", "url": "https://files.pythonhosted.org/packages/52/34/8d28056855d51d92340ddc284a79c46ab57eff741dfcb7acfe27fb1b7813/pygeocode-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "523b87db6b5a395877f1ad1132f63e9e", "sha256": "e9bc5e52cca0e8afee9aebd58a0f9a7bf935cb10b2075178f2724ba63a12da66" }, "downloads": -1, "filename": "pygeocode-0.0.4.tar.gz", "has_sig": false, "md5_digest": "523b87db6b5a395877f1ad1132f63e9e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7632, "upload_time": "2012-10-20T09:05:48", "url": "https://files.pythonhosted.org/packages/a5/25/62e2e200f5ff61e44da7022ff87ddf43e8ba8e919485d9cace5a745aa35c/pygeocode-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "6f02abe02b8df4f23490ad8608c5ddc9", "sha256": "4604b73ea5fc2450ef59cd959972d541a34a6e0085ee3bcdabad8bc67d70c56d" }, "downloads": -1, "filename": "pygeocode-0.0.5.tar.gz", "has_sig": false, "md5_digest": "6f02abe02b8df4f23490ad8608c5ddc9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7492, "upload_time": "2012-10-29T20:51:55", "url": "https://files.pythonhosted.org/packages/c4/d3/fcfaa6ef1ef218561981428b3ce4b441c0132b6f34e73bc9752b0d674968/pygeocode-0.0.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6f02abe02b8df4f23490ad8608c5ddc9", "sha256": "4604b73ea5fc2450ef59cd959972d541a34a6e0085ee3bcdabad8bc67d70c56d" }, "downloads": -1, "filename": "pygeocode-0.0.5.tar.gz", "has_sig": false, "md5_digest": "6f02abe02b8df4f23490ad8608c5ddc9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7492, "upload_time": "2012-10-29T20:51:55", "url": "https://files.pythonhosted.org/packages/c4/d3/fcfaa6ef1ef218561981428b3ce4b441c0132b6f34e73bc9752b0d674968/pygeocode-0.0.5.tar.gz" } ] }