-
Notifications
You must be signed in to change notification settings - Fork 43
[Tutorial] chapter.00 Intro
Housa Hitomi edited this page Apr 24, 2022
·
1 revision
首先欢迎大家来使用 khl.py!如果有兴趣的话,也非常欢迎大家来一起开发和维护 khl.py
废话就不多说了,我们先来康康入门的准备工作有哪些:
巧妇难为无米之炊,所以首先要做的事儿当然是整个机器人来啦,流程也很简单,只要三部
- 准备一个 kaiheila.cn 的账号
- 来 服务器:「开黑啦」开发者内测 申请开发者内测权限
- 在 网页后台:开发者中心 - 应用 创建一个应用,然后点开刚创建好的应用
- 大家能在左侧的「设置」选项卡列表中看到一项「机器人」,点开它
- 点开「机器人」选项卡后,就能看到机器人的信息以及「机器人连接模式」、「Token」两项重要选项
- 「机器人连接模式」请设置为「websocket」,这是一种很好用的连接方式,且本教程前半段都不会讲 webhook
- 「Token」是机器人的身份凭证,请不要上传到任何地方 / 告诉其他人 / 直接写进代码 / 上传到代码托管平台
巧妇有了,米有了,接下来就是要口锅来装米才行,而给 khl.py 用的「锅」也很好搭,两步即可:
- 安装 python,版本号>=3.6.8 即可
- 为什么是 3.6.8?因为 centos7 能直接通过 epel 安装 python 3.6.8,所以 centos 选手也不需要从源码编译了,直接通过 epel 安装即可,很方便
- 运行以下命令来安装 khl.py:
pip install khl.py
注意:如果你的机器上同时有多个版本的 python,要注意别装到错误版本的 python 里了
我们下节 example 才会正式开始「做饭」,所以我们这里先简单地说说 khl.py 的特点,就当是准备点柴火和引子,方便大家之后「做起饭来」上手更快:
-
khl.py 是全异步的 API 框架
- 异步是个啥?这个问题就不展开说了,大家可以百度/谷歌一下「异步 同步」,两者对照起来学比较快
-
khl.py 使用 aiohttp 实现网络通信功能
- 所以你可以直接让机器人用
aiohttp
来访问网站、获取资源,不需要再import requests
了 -
aiohttp
也是全异步的网络框架,所以和我们的代码相性非常好
- 所以你可以直接让机器人用
- 有时间的话,还可以搜搜「python asyncio」,因为 khl.py 可以很自然地联动
asyncio
,来实现一些很炫的东西
现在巧妇有了米、有了锅、有了柴火,大家可以准备来写几段了
talk is cheap, show me the code
最开始的话当然还是 hello world 了,example 01 Hello, World!,我们走