【linux系统版本Centos7】基于nonebot与go-cqhttp的机器人云端部署

简介: 【linux系统版本Centos7】基于nonebot与go-cqhttp的机器人云端部署

前言💖


随着数字信息化时代的到来,自动处理这门技术也越来越重要,很多人都开启了Python学习之路,随着数据信息量日益的增加,支持高并发亦成为未来的发展趋势,所以有很多人开启了Go语言学习之路。今天呢咱咱们介绍一下基于这两大语言之间的一款产品。这款产品的主要目的就是实现一款智能小助手。他可以帮助你处理某些信息,他也可以在你无聊寂寞的时候陪伴你。


3be33d8ad4564697923cffe07198a7c2.png


我可能不会分享一些关于机器人具体的知识点,只是分享一下使用机器人的时候遇到的问题以及解决方案。如果你对这方面比较感兴趣可以私聊我.咱们一块交流。


一、操作linux系统的软件💖


推荐使用Xshell 7进行远程窗口的操控,使用Xftp 7进行文件的传输。

这两款软件直接在网上搜就行,如果是学生身份有免费的版本。


7f2ef176c6ab4b0f83a93c67d178a3b5.png


二、Centos7安装Python3环境💖


部署及机器人的时候需要使用nb-cli库,但是目前只有python3.7.6以上的版本支持他。所以大家安装Python的时候一定要安装python3.7.6以上的版本。否则就会报错没有nb-cli库。在这里小编推荐使用Anaconda3,因为Anaconda可以独立的创建环境,可以轻松地升级Python版本。可以很好的部署。可以使用清华镜像源下载你想要的版本,然后使用Xftp工具传输到linux系统。传送门


1.安装Anaconda3🌳


将你下载的Anaconda3上传到linux系统后,将其移动到/usr/local/src目录下,可以直接使用Xftp操作

也可以使用mv Anacondaxxx.sh /usr/local/src命令(xxx是你的anaconda版本号)。

然后执行bash Anacondaxxx.sh,剩下的按回车或者根据提示按yes或no

Anaconda默认将环境变量配置到/root/.bashrc所以咱们对其重新加载一下

执行source /root/.bashrc

然后输入Python3就可以完美运行拉。(python3.7.0并不能满足我们的需求,所以会告诉大家怎么升级)

好像清华镜像源内最高的Anaconda版本自带的Python只有3.7.0,大家可以试一试。


15ecd7490285451793e4e6ab0703dc5e.png


2.Anaconda的基本使用🌳


① 查看、创建、激活、退出、删除环境🐜


在这里只需执行前两步

第一步 conda create -n pybot(环境名称这里博主创建的pybot) python=3.9.6

第二步 conda activate pybot (激活环境)


b16d788c7ad348aabebce0c1b5aa6867.png


第三步 source activate pybot (切回base环境)


b62c32873203438ebc268579cecbeee5.png


第四步 conda remove -n pybot (删除虚拟环境)

第五步 conda info --env (查看当前都有哪些环境)


②查看、下载环境中的包🐜


conda list (查看有哪些包)

conda install 包名 (下载包)


③安装nonebot🐜


随着上述的环境创建完成,Python版本低的问题也就迎刃而解了。

紧接着将下面几个包安装一下

eg: conda pydantic==1.8.2

pydantic==1.8.2

loguru==0.5.3

pygtrie==2.4.2

httpx==0.21.1

python-dotenv==0.19.2

uvicorn==0.15.0

fastapi==0.68.2

requests==2.26.0

selenium==4.0.0

aiocqhttp==1.4.2

ffmpeg==1.4

aiohttp==3.8.1

nb-cli==0.5.1

nonebot2==2.0.0a16

nonebot-plugin-apscheduler==0.1.2

nonebot-adapter-cqhttp==2.0.0a16


3.成功启动🌳

3fab1fca6cca40cab4bb4cf45b20fbda.png


二、配置go-cqhttp💖


主要注意一下几个问题。下载cqhttp传送门


53a0b6d68fcf45c08a4b7d3c68c237eb.png


下载完解压后将go-cqhttp传送到linux系统上然后执行

chmod 777 go-cqhttp 赋予执行权限

第一次执行 ./go-cqhttp 会生成配置文件


ffa57697833042a3ac4e888b9723c6a7.png


进入之后配置

修改qq号(密码可不填)


341489c9de924cb3a1a4721f904a23c3.png


(这里的端口号要与nonebot中的.env.dev或者.env.pord的端口号保持一直,尽量用一个不被占用的)


7c626d8c1d40401c9d529f46ae9226c9.png


1.提示go-cqhttp不是可执行二进制文件🥶


会提示go-cqhttp不是可执行文件,此时的原因就大致有两个(如果再碰到会追加)


是go-cqhttp版本与linux版本对不上,可以使用以下命令查看linux版本,但是这个提示并不能说明什么,有可能显示的是64,但是cpu只能执行32位的程序,遇见这个问题可以多切换几个cahttp版本


72e071ad438640919f7c02dd6bcad915.png


没有赋予go-cqhttp版本执行权限

使用chmod 777 go-cqhttp 赋予权限。


2.url与cqhttp版本对不上🥶


错误示例如下


e490b1b427a045189d204e50e85f13d4.png


这个路径要与cqhttp的版本对应上.否则容易出错

如果不是bate版本可以使用这个


4f02113decba4a32bb1931b9d4111ca7.png


如果是bate版本就使用

ws:// 127.0.0.1: 12345/onebot/v11/ws



3.成功运行go-cqhttp😎


至此扫码登录就好了。如果大家在配置的时候还有什么问题,或者有对此方面技术感兴趣的同学欢迎私信我,或者评论区留言。记得三连哦。👽


相关文章
|
1月前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
80 3
|
1月前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
72 2
|
5天前
|
存储 缓存 监控
Linux缓存管理:如何安全地清理系统缓存
在Linux系统中,内存管理至关重要。本文详细介绍了如何安全地清理系统缓存,特别是通过使用`/proc/sys/vm/drop_caches`接口。内容包括清理缓存的原因、步骤、注意事项和最佳实践,帮助你在必要时优化系统性能。
112 78
|
8天前
|
Linux Shell 网络安全
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
本指南介绍如何利用 HTA 文件和 Metasploit 框架进行渗透测试。通过创建反向 shell、生成 HTA 文件、设置 HTTP 服务器和发送文件,最终实现对目标系统的控制。适用于教育目的,需合法授权。
39 9
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
|
1月前
|
缓存 Java Linux
如何解决 Linux 系统中内存使用量耗尽的问题?
如何解决 Linux 系统中内存使用量耗尽的问题?
122 48
|
4天前
|
存储 监控 Linux
嵌入式Linux系统编程 — 5.3 times、clock函数获取进程时间
在嵌入式Linux系统编程中,`times`和 `clock`函数是获取进程时间的两个重要工具。`times`函数提供了更详细的进程和子进程时间信息,而 `clock`函数则提供了更简单的处理器时间获取方法。根据具体需求选择合适的函数,可以更有效地进行性能分析和资源管理。通过本文的介绍,希望能帮助您更好地理解和使用这两个函数,提高嵌入式系统编程的效率和效果。
44 13
|
28天前
|
Ubuntu Linux 网络安全
linux系统ubuntu中在命令行中打开图形界面的文件夹
在Ubuntu系统中,通过命令行打开图形界面的文件夹是一个高效且实用的操作。无论是使用Nautilus、Dolphin还是Thunar,都可以根据具体桌面环境选择合适的文件管理器。通过上述命令和方法,可以简化日常工作,提高效率。同时,解决权限问题和图形界面问题也能确保操作的顺利进行。掌握这些技巧,可以使Linux操作更加便捷和灵活。
20 3
|
5天前
|
Ubuntu Linux C++
Win10系统上直接使用linux子系统教程(仅需五步!超简单,快速上手)
本文介绍了如何在Windows 10上安装并使用Linux子系统。首先,通过应用商店安装Windows Terminal和Linux系统(如Ubuntu)。接着,在控制面板中启用“适用于Linux的Windows子系统”并重启电脑。最后,在Windows Terminal中选择安装的Linux系统即可开始使用。文中还提供了注意事项和进一步配置的链接。
17 0
|
1月前
|
存储 运维 Linux
如何在 Linux 系统中使用 envsubst 命令替换环境变量?
`envsubst` 是 Linux 系统中用于替换文本中环境变量值的实用工具。本文分三部分介绍其工作原理、使用方法及实际应用,包括配置文件替换、脚本执行中环境变量替换和动态生成文件等场景,帮助用户高效利用 `envsubst` 进行开发和运维工作。
52 4
|
1月前
|
Oracle 关系型数据库 MySQL
Centos7下图形化部署单点KFS同步工具并将Oracle增量同步到KES
Centos7下图形化部署单点KFS同步工具并将Oracle增量同步到KES
Centos7下图形化部署单点KFS同步工具并将Oracle增量同步到KES
下一篇
DataWorks