{ "info": { "author": "Peter Henderson", "author_email": "peterhenderson@byu.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Environment :: No Input/Output (Daemon)", "Environment :: Web Environment", "Intended Audience :: Developers", "License :: Other/Proprietary License", "Operating System :: OS Independent", "Programming Language :: Python :: 2", "Topic :: Internet :: WWW/HTTP", "Topic :: Sociology :: Genealogy", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "=================\n python-fs-stack\n=================\n\n``python-fs-stack`` provides a Python package that simplifies access to the\nFamilySearch_ `REST-style API`_.\n\n.. _FamilySearch: https://new.familysearch.org/\n.. _REST-style API: https://devnet.familysearch.org/docs/api\n\n:Home Page:\n http://pypi.python.org/pypi/python-fs-stack\n:Source Code:\n https://github.com/familysearch-devnet/python-fs-stack\n\n\n.. contents::\n\n\nDependencies\n============\n\n- Python 2.4 or later\n- simplejson_, if using Python older than 2.6\n- wsgi_intercept_ 0.5.0 or later (only required to run test suite)\n\n.. _simplejson: http://pypi.python.org/pypi/simplejson\n.. _wsgi_intercept: http://pypi.python.org/pypi/wsgi_intercept\n\n\nInstallation\n============\n\nUsing pip_::\n\n pip install python-fs-stack\n\nor using easy_install_ (from setuptools_ or distribute_)::\n\n easy_install python-fs-stack\n\nor (after downloading manually)::\n\n python setup.py install\n\n.. _pip: http://www.pip-installer.org/\n.. _easy_install: http://peak.telecommunity.com/DevCenter/EasyInstall\n.. _setuptools: http://pypi.python.org/pypi/setuptools\n.. _distribute: http://pypi.python.org/pypi/distribute\n\n\nExample Usage\n=============\n\nFirst, import the FamilySearch class::\n\n from familysearch import FamilySearch\n\n\nAuthenticating with FamilySearch\n--------------------------------\n\n``python-fs-stack`` supports several ways of initiating a session with\nFamilySearch, including Basic Authentication, OAuth, and resuming a previous\nsession.\n\nLog in immediately with Basic Authentication::\n\n fs = FamilySearch('ClientApp/1.0', 'developer_key', 'username', 'password')\n\nLog in in a separate step with Basic Authentication::\n\n fs = FamilySearch('ClientApp/1.0', 'developer_key')\n fs.login('username', 'password')\n\nLog in in two steps with Basic Authentication::\n\n fs = FamilySearch('ClientApp/1.0', 'developer_key')\n fs.initialize()\n fs.authenticate('username', 'password')\n\nLog in with OAuth::\n\n import webbrowser\n fs = FamilySearch('ClientApp/1.0', 'developer_key')\n fs.request_token()\n webbrowser.open(fs.authorize())\n # [Enter username and password into browser window that opens]\n verifier = [verifier from resulting web page]\n fs.access_token(verifier)\n\nResume a previous session::\n\n fs = FamilySearch('ClientApp/1.0', 'developer_key', session='session_id')\n\nUse the production system instead of the reference system::\n\n fs = FamilySearch('ClientApp/1.0', 'developer_key', base='https://api.familysearch.org')\n\n\nMaintaining and Ending a Session\n--------------------------------\n\nKeep the current session active::\n\n fs.session()\n\nLog out::\n\n fs.logout()\n\n\nAccessing Family Tree Information\n---------------------------------\n\nPrint current user's family tree details::\n\n print fs.person()\n\nTo specify a person ID to retrieve, pass the ID as an argument::\n\n print fs.person('ABCD-123')\n\nTo print multiple family tree entries, pass a list of IDs as an argument. To\npass additional parameters to the API, simply pass them as named arguments::\n\n print fs.person(['ABCD-123', 'EFGH-456'], events='all', children='all')\n\nPrint the latest version of a list of persons (this request is more lightweight\nthan a full person request, so it supports more IDs at once)::\n\n for person in fs.version(['ABCD-123', 'EFGH-456']):\n print person['id'], person['version']\n\nPrint the contents of a persona::\n\n print fs.persona('ABCD-123')\n\nPrint current user's pedigree::\n\n print fs.pedigree()\n\nFormat the pedigree output more nicely::\n\n import pprint\n pprint.pprint(fs.pedigree())\n\n\nSearching for Persons in the Family Tree\n----------------------------------------\n\nSearch for a male named John Smith::\n\n results = fs.search(givenName='John', familyName='Smith', gender='Male', maxResults=10)\n\nRetrieve the second page of the previous search::\n\n more_results = fs.search(contextId=results[0]['contextId'], maxResults=10, startIndex=10)\n\nSearch for an exact match for John Smith (use an ``options`` dict to specify\noptions with periods in their names)::\n\n results = fs.search(options={'givenName.exact': 'John', 'familyName.exact': 'Smith'}, gender='Male', maxResults=10)\n\n\nSearching for Possible Duplicates\n---------------------------------\n\nSearch for possible duplicates of a person::\n\n matches = fs.match('ABCD-123')\n\nCompute match score between two persons::\n\n match = fs.match('ABCD-123', id='EFGH-456')\n\nSearch for possible duplicates matching specified parameters::\n\n matches = fs.match(givenName='John', familyName='Smith', gender='Male', birthDate='1900', birthPlace='USA', deathDate='1950', deathPlace='USA')\n\n\nStandardizing Places, Names, and Dates\n--------------------------------------\n\nLook up a place by name::\n\n place = fs.place(place='paris')\n\nLook up a place by ID::\n\n place = fs.place(5061509)\n\nLook up a list of places by ID::\n\n places = fs.place([5061509, 5061446])\n\nLook up a place by name, showing only the most likely result, returning results in another locale::\n\n place = fs.place(place='germany', filter=True, locale='de')\n\nStandardize a name::\n\n name = fs.name('John Smith')\n\nStandardize a list of names::\n\n names = fs.name(['John Smith', 'Jane Doe'])\n\nStandardize a date::\n\n date = fs.date('1-1-11')\n\nStandardize a list of dates::\n\n dates = fs.date(['1-1-11', 'december 31 1999'])", "description_content_type": null, "docs_url": "https://pythonhosted.org/python-fs-stack/", "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://pypi.python.org/pypi/python-fs-stack", "keywords": "FamilySearch,genealogy,family history,API,OAuth,REST,JSON", "license": "FamilySearch API License Agreement ", "maintainer": null, "maintainer_email": null, "name": "python-fs-stack", "package_url": "https://pypi.org/project/python-fs-stack/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/python-fs-stack/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://pypi.python.org/pypi/python-fs-stack" }, "release_url": "https://pypi.org/project/python-fs-stack/0.2/", "requires_dist": null, "requires_python": null, "summary": "Python wrapper for all FamilySearch APIs", "version": "0.2" }, "last_serial": 797941, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "16128d38a8a1d59013a0612487234cd8", "sha256": "3e0c1e2671553044715a00b62244ab2c123c3e848ff00e20fa22b3c6f82b7522" }, "downloads": -1, "filename": "python-fs-stack-0.1.tar.gz", "has_sig": false, "md5_digest": "16128d38a8a1d59013a0612487234cd8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7471, "upload_time": "2011-02-09T21:44:14", "url": "https://files.pythonhosted.org/packages/bc/4a/72557c49753d924029c750a8e4b92a73d6154038545ce2fe5ef4369b1a1f/python-fs-stack-0.1.tar.gz" }, { "comment_text": "", "digests": { "md5": "2931c459de0787740085482ac2431a8e", "sha256": "46a082cbe12e89ead2d5a7781fbe1742eb43a1ce08fcd95fbb9f4c2df4234c58" }, "downloads": -1, "filename": "python-fs-stack-0.1.zip", "has_sig": false, "md5_digest": "2931c459de0787740085482ac2431a8e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10597, "upload_time": "2011-02-10T02:08:33", "url": "https://files.pythonhosted.org/packages/1a/a5/c7495b7ef68252f6ae63f21d49cbb11d36362212165832eda40021b0b241/python-fs-stack-0.1.zip" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "6d365d50d88467114a66d63125357007", "sha256": "6c274bc1553447e6647c45dccbc76d2be4ca80d314c88844b33337b66f9772ad" }, "downloads": -1, "filename": "python-fs-stack-0.2.tar.gz", "has_sig": false, "md5_digest": "6d365d50d88467114a66d63125357007", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19946, "upload_time": "2011-06-08T22:21:08", "url": "https://files.pythonhosted.org/packages/99/d4/823fca60e6da187b2bf89e945291af234399a3dd31a9d798adac3e69f980/python-fs-stack-0.2.tar.gz" }, { "comment_text": "", "digests": { "md5": "b26cf09ff6d5a6d046ae8e6ec1620280", "sha256": "bc6ddaaf01ff8766ce4616518b90288e14f4c2b2f69710641bb49c22ecce9016" }, "downloads": -1, "filename": "python-fs-stack-0.2.zip", "has_sig": false, "md5_digest": "b26cf09ff6d5a6d046ae8e6ec1620280", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37655, "upload_time": "2011-06-08T22:17:14", "url": "https://files.pythonhosted.org/packages/7a/f9/3a698753346576eb282cbdf31599870bbeb0689d1387890914c18ee5639c/python-fs-stack-0.2.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6d365d50d88467114a66d63125357007", "sha256": "6c274bc1553447e6647c45dccbc76d2be4ca80d314c88844b33337b66f9772ad" }, "downloads": -1, "filename": "python-fs-stack-0.2.tar.gz", "has_sig": false, "md5_digest": "6d365d50d88467114a66d63125357007", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19946, "upload_time": "2011-06-08T22:21:08", "url": "https://files.pythonhosted.org/packages/99/d4/823fca60e6da187b2bf89e945291af234399a3dd31a9d798adac3e69f980/python-fs-stack-0.2.tar.gz" }, { "comment_text": "", "digests": { "md5": "b26cf09ff6d5a6d046ae8e6ec1620280", "sha256": "bc6ddaaf01ff8766ce4616518b90288e14f4c2b2f69710641bb49c22ecce9016" }, "downloads": -1, "filename": "python-fs-stack-0.2.zip", "has_sig": false, "md5_digest": "b26cf09ff6d5a6d046ae8e6ec1620280", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37655, "upload_time": "2011-06-08T22:17:14", "url": "https://files.pythonhosted.org/packages/7a/f9/3a698753346576eb282cbdf31599870bbeb0689d1387890914c18ee5639c/python-fs-stack-0.2.zip" } ] }