All Projects → mixmoe → HibiAPI

mixmoe / HibiAPI

Licence: Apache-2.0 license
一个实现了多种常用站点的易用化API的程序 / A program that implements easy-to-use APIs for a variety of commonly used sites.

Programming Languages

python
139335 projects - #7 most used programming language
Dockerfile
14818 projects

Projects that are alternatives of or similar to HibiAPI

Fastapi
FastAPI framework, high performance, easy to learn, fast to code, ready for production
Stars: ✭ 39,588 (+9171.19%)
Mutual labels:  openapi, asyncio, openapi3, fastapi
fastapi-azure-auth
Easy and secure implementation of Azure AD for your FastAPI APIs 🔒 B2C, single- and multi-tenant support.
Stars: ✭ 174 (-59.25%)
Mutual labels:  openapi, asyncio, fastapi
Rsshub
🍰 Everything is RSSible
Stars: ✭ 18,111 (+4141.45%)
Mutual labels:  tieba, bilibili, pixiv
Rororo
Implement aiohttp.web OpenAPI 3 server applications with schema first approach.
Stars: ✭ 95 (-77.75%)
Mutual labels:  openapi, asyncio, openapi3
Full Stack Fastapi Postgresql
Full stack, modern web application generator. Using FastAPI, PostgreSQL as database, Docker, automatic HTTPS and more.
Stars: ✭ 7,635 (+1688.06%)
Mutual labels:  openapi, openapi3, fastapi
Fastapi Plugins
FastAPI framework plugins
Stars: ✭ 104 (-75.64%)
Mutual labels:  openapi, asyncio, openapi3
SetuAPI
色图API
Stars: ✭ 39 (-90.87%)
Mutual labels:  pixiv, fastapi
openapi-viewer
Browse and test a REST API described with the OpenAPI 3.0 Specification
Stars: ✭ 85 (-80.09%)
Mutual labels:  openapi, openapi3
intellij-openapi-generator
Intellij Plugin for openapi-generator
Stars: ✭ 73 (-82.9%)
Mutual labels:  openapi, openapi3
yutto
🧊 一个可爱且任性的 B 站视频下载器(bilili V2)
Stars: ✭ 383 (-10.3%)
Mutual labels:  asyncio, bilibili
restish
Restish is a CLI for interacting with REST-ish HTTP APIs with some nice features built-in
Stars: ✭ 453 (+6.09%)
Mutual labels:  openapi3, fastapi
openapi-python-client
Generate modern Python clients from OpenAPI
Stars: ✭ 543 (+27.17%)
Mutual labels:  openapi, fastapi
openapi-eller
Generate OpenAPI v3 clients and servers from the command line
Stars: ✭ 19 (-95.55%)
Mutual labels:  openapi, openapi3
aws2openapi
Amazon Web Services API description to OpenAPI 3.0 definition
Stars: ✭ 45 (-89.46%)
Mutual labels:  openapi, openapi3
specifications-ITS-REST
openEHR REST API Specifications
Stars: ✭ 20 (-95.32%)
Mutual labels:  openapi, openapi3
openapi-filter
Filter internal paths, operations, parameters, schemas etc from OpenAPI/Swagger/AsyncAPI definitions
Stars: ✭ 112 (-73.77%)
Mutual labels:  openapi, openapi3
oaie-sketch
OpenAPI Visual Editor
Stars: ✭ 54 (-87.35%)
Mutual labels:  openapi, openapi3
openapi4j
OpenAPI 3 parser, JSON schema and request validator.
Stars: ✭ 92 (-78.45%)
Mutual labels:  openapi, openapi3
openapi
OpenAPI 3 Specification for golang
Stars: ✭ 18 (-95.78%)
Mutual labels:  openapi, openapi3
swagger-converter
OpenAPI/Swagger 2.0 to OpenAPI 3.0 Converter WebService
Stars: ✭ 58 (-86.42%)
Mutual labels:  openapi, openapi3

HibiAPI

一个实现了多种常用站点的易用化 API 的程序.

A program that implements easy-to-use APIs for a variety of commonly used sites.

Demo Version

Lint Test Coverage

PyPI PyPI - Downloads PyPI - Python Version PyPI - License

GitHub last commit GitHub commit activity Lines of code GitHub stars GitHub forks GitHub issues


前言

  • HibiAPI提供多种网站公开内容的 API 集合, 它们包括:

    • Pixiv 的图片和小说相关信息获取和搜索
    • Bilibili 的视频/番剧等信息获取和搜索
    • 网易云音乐的音乐/MV 等信息获取和搜索
    • 百度贴吧的帖子内容的获取
    • 爱壁纸的横版和竖版壁纸获取
  • 该项目的前身是 Imjad API1

    • 由于它的使用人数过多, 致使调用超出限制, 所以本人希望提供一个开源替代来供社区进行自由地部署和使用, 从而减轻一部分该 API 的使用压力

优势

开源

高效

  • 使用 Python 的异步机制, 由FastAPI驱动, 带来高效的使用体验 虽然性能瓶颈压根不在这

稳定

  • 在代码中广泛使用了 Python 的类型提示支持, 使代码可读性更高且更加易于维护和调试

  • 在开发初期起就一直使用多种现代 Python 开发工具辅助开发, 包括:

    • 使用 PyLance 进行静态类型推断
    • 使用 Flake8 对代码格式进行检查
    • 使用 Black 格式化代码以提升代码可读性
  • 不直接使用第三方开发的 API 调用库, 而是全部用更加适合 Web 应用的逻辑重写第三方 API 请求, 更加可控 疯狂造轮子

已实现 API2

  • Pixiv
  • 网易云音乐
  • 一言 (其代替方案https://hitokoto.cn提供的方案已足够好, 暂不考虑支持)
  • Bilibili
  • 二维码
  • 企鹅 FM (似乎用的人不是很多)
  • 百度贴吧
  • 爱壁纸

部署指南

Deploy to Heroku

应用实例

我有更多的应用实例? 立即 PR!

特别鸣谢

@journey-ad 大佬的 Imjad API, 它是本项目的起源

参考项目

正是因为有了你们, 这个项目才得以存在

贡献者们

All Contributors

感谢这些为这个项目作出贡献的各位大佬:


Kyomotoi

📖 ⚠️

城倉奏

💡

SkipM4

📖

Nook

💻

Jocky Chiang

💻

midori

📖

Pretty9

💻

Jad

🐛 🤔

本段符合 all-contributors 规范

开源许可

Copyright 2020-2021 Mix Technology

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Footnotes

  1. 什么是 Imjad API

  2. 请查看 #1

  3. 为了减轻服务器负担, Demo 服务器已开启了 Cloudflare 全站缓存, 如果有实时获取更新的需求, 请自行搭建或使用其他部署实例

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].