{ "info": { "author": "Simon Willison", "author_email": "", "bugtrack_url": null, "classifiers": [], "description": "# github-to-sqlite\n\n[![PyPI](https://img.shields.io/pypi/v/github-to-sqlite.svg)](https://pypi.org/project/github-to-sqlite/)\n[![CircleCI](https://circleci.com/gh/dogsheep/github-to-sqlite.svg?style=svg)](https://circleci.com/gh/dogsheep/github-to-sqlite)\n[![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](https://github.com/dogsheep/github-to-sqlite/blob/master/LICENSE)\n\nSave data from GitHub to a SQLite database.\n\n## How to install\n\n $ pip install github-to-sqlite\n\n## Authentication\n\nCreate a GitHub personal access token: https://github.com/settings/tokens\n\nRun this command and paste in your new token:\n\n $ github-to-sqlite auth\n\nThis will create a file called `auth.json` in your current directory containing the required value. To save the file at a different path or filename, use the `--auth=myauth.json` option.\n\n## Retrieving issues for a repository\n\nThe `issues` command retrieves all of the issues belonging to a specified repository.\n\n $ github-to-sqlite issues github.db simonw/datasette\n\nIf an `auth.json` file is present it will use the token from that file. It works without authentication for public repositories but you should be aware that GitHub have strict IP-based rate limits for unauthenticated requests.\n\nYou can point to a different location of `auth.json` using `-a`:\n\n $ github-to-sqlite issues github.db simonw/datasette -a /path/to/auth.json\n\nYou can use the `--issue` option to only load just one specific issue:\n\n $ github-to-sqlite issues github.db simonw/datasette --issue=1\n\n## Retrieving issue comments for a repository\n\nThe `issue-comments` command retrieves all of the comments on all of the issues in a repository.\n\nIt is recommended you run `issues` first, so that each imported comment can have a foreign key poining to its issue.\n\n $ github-to-sqlite issues github.db simonw/datasette\n $ github-to-sqlite issue-comments github.db simonw/datasette\n\nYou can use the `--issue` option to only load comments for a specific issue within that repository, for example:\n\n $ github-to-sqlite issue-comments github.db simonw/datasette --issue=1\n\n## Fetching repos belonging to a user or organization\n\nThe `repos` command fetches repos belonging to a user or organization.\n\nWithout any other arguments, this command will fetch all repos that the currently authenticated user owns, collaborates on or can access via one of their organizations:\n\n $ github-to-sqlite repos github.db\n\nTo fetch repos belonging to a specific user or organization, provide their username as an argument:\n\n $ github-to-sqlite repos github.db dogsheep # organization\n $ github-to-sqlite repos github.db simonw # user\n\n## Fetching repos that have been starred by a user\n\nThe `starred` command fetches the repos that have been starred by a user.\n\n $ github-to-sqlite starred github.db simonw\n\nIf you are using an `auth.json` file you can omit the username to retrieve the starred repos for the authenticated user.\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/dogsheep/github-to-sqlite", "keywords": "", "license": "Apache License, Version 2.0", "maintainer": "", "maintainer_email": "", "name": "github-to-sqlite", "package_url": "https://pypi.org/project/github-to-sqlite/", "platform": "", "project_url": "https://pypi.org/project/github-to-sqlite/", "project_urls": { "Homepage": "https://github.com/dogsheep/github-to-sqlite" }, "release_url": "https://pypi.org/project/github-to-sqlite/0.5/", "requires_dist": [ "sqlite-utils (~=1.11)", "requests", "pytest ; extra == 'test'" ], "requires_python": "", "summary": "Save data from GitHub to a SQLite database", "version": "0.5" }, "last_serial": 5966437, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "7b49db2d2715cdbed6dde330efe2f18c", "sha256": "5d19202d5acb914ea34a2a946e62e921369ffb65b47d8ab02224d7a520c47b14" }, "downloads": -1, "filename": "github_to_sqlite-0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "7b49db2d2715cdbed6dde330efe2f18c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8418, "upload_time": "2019-09-08T03:08:05", "url": "https://files.pythonhosted.org/packages/f1/8d/0cc6eb474a87af737a6522095d5b70ebe8ce4f4e975e3c2d3e88af80581d/github_to_sqlite-0.1-py3-none-any.whl" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "09d20bafcc797d2a6755be3f3c5500ea", "sha256": "fb8adbf1040d7b2a5d565598c2c2e55261cdedfc4f5daf997e56070aae48780f" }, "downloads": -1, "filename": "github_to_sqlite-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "09d20bafcc797d2a6755be3f3c5500ea", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8439, "upload_time": "2019-09-14T19:42:33", "url": "https://files.pythonhosted.org/packages/f2/32/f328ec3667c391def83bc7f5d2422c7ff2b66dadf08fdc66d4f4d4d6a391/github_to_sqlite-0.1.1-py3-none-any.whl" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "7303827619ce897d4a1ef7bddba8bb81", "sha256": "48b81a89330c518bbf26a9a411462d966deea9ca160bff03859a7a228fbd43e5" }, "downloads": -1, "filename": "github_to_sqlite-0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "7303827619ce897d4a1ef7bddba8bb81", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9209, "upload_time": "2019-09-14T21:31:57", "url": "https://files.pythonhosted.org/packages/8d/8e/716162aee42b0b774fad232364b26b9049c79d224806d2ddb3129115355f/github_to_sqlite-0.2-py3-none-any.whl" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "f6109839a9b0a5fa97ada16693a6423e", "sha256": "585bdba840e49487300b582677b49ac92a2e049b2448d8afadd401e67b572120" }, "downloads": -1, "filename": "github_to_sqlite-0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "f6109839a9b0a5fa97ada16693a6423e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9329, "upload_time": "2019-09-14T21:50:04", "url": "https://files.pythonhosted.org/packages/a0/f6/2c3e50afcde932ca17e1297f3fe4b950f97fa5685fb78daa5c8091ed9c7f/github_to_sqlite-0.3-py3-none-any.whl" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "c660303f02050d2aa5d86f2592031f54", "sha256": "458c13930d969bd1e8e5eed72f1e3113ccb1aa12c2c29088217146a23fc83622" }, "downloads": -1, "filename": "github_to_sqlite-0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "c660303f02050d2aa5d86f2592031f54", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9584, "upload_time": "2019-09-17T00:19:48", "url": "https://files.pythonhosted.org/packages/ea/29/5eb707ff1676a4dae1a42740e90ac1182c9ae6142142d939b3008931a4e4/github_to_sqlite-0.4-py3-none-any.whl" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "0094aba72c6ed3cb6e7035ada6986f75", "sha256": "b696d5003e275e5843b745e36f90580b90b4c8c18d2671f94b3c6d96a09ea5d4" }, "downloads": -1, "filename": "github_to_sqlite-0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "0094aba72c6ed3cb6e7035ada6986f75", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10293, "upload_time": "2019-10-13T05:29:18", "url": "https://files.pythonhosted.org/packages/1a/3b/9ee0578fac8ac841ba51fa2c7fdabebcb78b07abf586b4d8581f4224afe0/github_to_sqlite-0.5-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0094aba72c6ed3cb6e7035ada6986f75", "sha256": "b696d5003e275e5843b745e36f90580b90b4c8c18d2671f94b3c6d96a09ea5d4" }, "downloads": -1, "filename": "github_to_sqlite-0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "0094aba72c6ed3cb6e7035ada6986f75", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10293, "upload_time": "2019-10-13T05:29:18", "url": "https://files.pythonhosted.org/packages/1a/3b/9ee0578fac8ac841ba51fa2c7fdabebcb78b07abf586b4d8581f4224afe0/github_to_sqlite-0.5-py3-none-any.whl" } ] }