项目地址
https://github.com/knight000/heroku_discordBOT
正文(?)
插件加载器
dsc_bot.py
里是插件加载器,把写好的插件放在plugins文件夹里面就会自动加载,当然作者不是我..
文件里用到的环境变量之类的可以在app.json里设置,使用环境变量能在开源的前提下保护自己的APIkey和TOKEN,或者让用户直观的自定义一些参数,在插件里请使用os
模块的os.environ['变量名']
来调用,请参照官方文档或者直接参照项目内的文件。
help指令
discord.py支持自动生成help文档,可以在命令里传入参数help=‘’或者用多行字符串来写,会自动提取为帮助文档,Category
的help文档也是,只输入help获取的帮助只有多行字符串的第一行,help [指令]能获取详细的帮助。
Category
设置Category
可以让help生成时自动分类,也可以让你开发新指令时不用再次添加bot.add_command
,具体请看以下demo。
1 | import discord |
由于Category
是类,所以编写的时候请记得传入self
embed
discord不但支持markdown,还支持embed嵌入元素,甚至可以在embed里使用markdown来达成美妙的效果。更多请参考官方文档
1 | embed_box = discord.Embed(title='demo',description='hello world', url='https://www.python.org') |
title:embed的标题
url:点击标题所跳转的链接
set_image:为embed嵌入一张图片
image的一点注意事项
discord当然可以发图,但是这是以BytesIO为形式发送文件,如果是网页上的图片的话,与其用requests爬下来再发送不如直接嵌入在embed里。如果需要发送图片请用BytesIO处理后再发送。
1 | import requests |
同步github和heroku的更改并自动部署
首先,进入你的heroku dashboard,点击你的应用然后进入Deploy界面
然后Deployment method选择Github,链接你的Github账户,在App connected to GitHub里选择你存放APP的仓库并链接,并开启Automatic deploys,至此设置完成,当你push到github时heroku也会同步更新,当然也可以切换分支什么的,更多的就等你们自己探索了,毕竟我也只是刚刚接触heroku。