simonw/datasette

GitHub: simonw/datasette

Datasette 是一个将 SQLite 数据库快速转化为交互式数据探索网站与 JSON API 的开源工具。

Stars: 11279 | Forks: 879

Datasette [![PyPI](https://img.shields.io/pypi/v/datasette.svg)](https://pypi.org/project/datasette/) [![更新日志](https://img.shields.io/github/v/release/simonw/datasette?label=changelog)](https://docs.datasette.io/en/latest/changelog.html) [![Python 3.x](https://img.shields.io/pypi/pyversions/datasette.svg?logo=python&logoColor=white)](https://pypi.org/project/datasette/) [![测试](https://static.pigsec.cn/wp-content/uploads/repos/cas/ce/ce733292a922c08274cf5a2096f8fa4cf01023bfa51a36ef6beecaaef371a9d9.svg)](https://github.com/simonw/datasette/actions?query=workflow%3ATest) [![文档状态](https://readthedocs.org/projects/datasette/badge/?version=latest)](https://docs.datasette.io/en/latest/?badge=latest) [![许可证](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](https://github.com/simonw/datasette/blob/main/LICENSE) [![docker: datasette](https://img.shields.io/badge/docker-datasette-blue)](https://hub.docker.com/r/datasetteproject/datasette) [![discord](https://img.shields.io/discord/823971286308356157?label=discord)](https://datasette.io/discord) *一个用于探索和发布数据的开源多合一工具* Datasette 是一个用于探索和发布数据的工具。它可以帮助人们将任何形状或大小的数据,转化为一个具有交互性、可探索的网站以及配套的 API 来发布。 Datasette 的目标用户包括数据记者、博物馆策展人、档案管理员、地方政府、科学家、研究人员,以及任何希望与世界分享数据的人。 [探索演示](https://datasette.io/global-power-plants/global-power-plants),观看[关于此项目的视频](https://simonwillison.net/2021/Feb/7/video/),或者[在 GitHub Codespaces 上](https://github.com/datasette/datasette-studio)进行尝试。 * [datasette.io](https://datasette.io/) 是项目的官方网站 * 最新 [Datasette 新闻](https://datasette.io/news) * 详细文档:https://docs.datasette.io/ * 示例:https://datasette.io/examples * 当前 `main` 分支的实时演示:https://latest.datasette.io/ * 有问题、反馈或想讨论此项目?加入我们的 [Discord](https://datasette.io/discord) ## 安装 如果您使用的是 Mac,[Homebrew](https://brew.sh/) 是安装 Datasette 最简单的方法: ``` brew install datasette ``` 您也可以使用 `pip` 或 `pipx` 进行安装: ``` pip install datasette ``` Datasette 需要 Python 3.8 或更高版本。我们还提供涵盖 Docker 等其他选项的[详细安装指南](https://docs.datasette.io/en/stable/installation.html)。 ## 基本用法 ``` datasette serve path/to/database.db ``` 这将在 8001 端口启动一个 Web 服务器 - 访问 http://localhost:8001/ 即可进入 Web 界面。 `serve` 是默认的子命令,如果愿意您可以将其省略。 在 OS X 上使用 Chrome?您可以像这样针对您的浏览器历史记录运行 Datasette: ``` datasette ~/Library/Application\ Support/Google/Chrome/Default/History --nolock ``` 现在访问 http://localhost:8001/History/downloads,将会看到一个用于浏览您下载数据的 Web 界面: ![由 datasette 渲染的下载表格](https://static.simonwillison.net/static/2017/datasette-downloads.png) ## metadata.json 如果您想在生成的 Datasette 网站中包含许可证和来源信息,可以使用类似这样的 JSON 文件来实现: ``` { "title": "Five Thirty Eight", "license": "CC Attribution 4.0 License", "license_url": "http://creativecommons.org/licenses/by/4.0/", "source": "fivethirtyeight/data on GitHub", "source_url": "https://github.com/fivethirtyeight/data" } ``` 将其保存为 `metadata.json`,然后像这样运行 Datasette: ``` datasette serve fivethirtyeight.db -m metadata.json ``` 许可证和来源信息将显示在首页和页脚中。它们也会包含在 API 生成的 JSON 中。 ## datasette publish 如果您配置了 [Heroku](https://heroku.com/) 或 [Google Cloud Run](https://cloud.google.com/run/),Datasette 可以通过单条命令将一个或多个 SQLite 数据库部署到互联网上: ``` datasette publish heroku database.db ``` 或者: ``` datasette publish cloudrun database.db ``` 这将创建一个同时包含 Datasette 应用程序和指定 SQLite 数据库文件的 Docker 镜像。然后,它会将该镜像部署到 Heroku 或 Cloud Run,并为您提供一个用于访问最终生成的网站和 API 的 URL。 有关更多详细信息,请参阅文档中的[发布数据](https://docs.datasette.io/en/stable/publish.html)。 ## Datasette Lite [Datasette Lite](https://lite.datasette.io/) 是使用 WebAssembly 打装的 Datasette,因此它可以完全在您的浏览器中运行,而无需 Python Web 应用程序服务器。如需了解更多信息,请阅读 [Datasette Lite 文档](https://github.com/simonw/datasette-lite/blob/main/README.md)。
标签:AI工具, API生成, Python, SQLite, 数据发布, 数据探索, 无后门, 请求拦截, 逆向工具