如何像黑客一样聊天 Mojo-Webqq

2018-12-24 12:15:22 浏览数 (1)

电影里的黑客们聊天不想我们生活中的一样,用QQ、微信的客户端,都是通过命令行来进行聊天交流的,大概是为了提升逼格吧。

今天发现一个有趣的项目:使用mojoqq来实现命令行QQ

目标版本是:Mojo-Webqq v2.1.4

项目地址:https://github.com/sjdy521/Mojo-Webqq

安装方法

推荐使用cpanm在线安装或升级Mojo::Webqq模块, 如果使用docker方式请参见Docker镜像安装及使用方法

安装perl

安装之前请先确认下你的系统是否已经安装了Perl,因为除了windows,其他大部分的平台默认都可能已经预装过

并且你的Perl版本至少5.10.1 ,推荐5.14

Perl官网下载页面 有包含Unix/Linux、Mac OS X、Windows多平台比较全面详细的安装说明

建议大家尽量选择Binaries(二进制预编译)的版本,安装即可使用,比较方便

平台

推荐选择

下载地址

Windows

1. StrawberryPerl2. ActivePerl3. Mojo-StrawberryPerl

StrawberryPerl下载地址Mojo-StrawberryPerl下载地址ActivePerl下载地址

Linux

1. 系统自带2. yum/apt等包管理器3. 官方源码编译4. Mojo-CentosPerl5. ActivePerl6. Mojo-ActivePerl7. DWIM-Perl

Mojo-CentosPerl下载地址ActivePerl下载地址Mojo-ActivePerl下载地址DWIM-Perl下载地址

Mac

1. 系统自带2. ActivePerl

ActivePerl下载地址

注意:

Mojo-CentosPerl是基于Centos系统编译打包而成,适合Centos6.5以上的x86_64系统

Mojo-ActivePerl是基于ActivePerl打包的而成,适用于linux x86_64系统,并且系统glibc 2.15

Mojo-StrawberryPerl是基于StrawberryPerl精简打包而成,适用于windows 32位/64位系统

安装cpanm包管理工具(如果系统已经安装了cpanm可以忽略此步骤)

方法a: 通过cpan安装cpanm

代码语言:javascript复制
$ cpan -i App::cpanminus

方法b: 直接在线安装cpanm

代码语言:javascript复制
 $ curl -kL https://cpanmin.us | perl - App::cpanminus

官方服务器在国外,如果无法访问,可以选择下面的命令:

代码语言:javascript复制
$ curl http://share-10066126.cos.myzijiebao.com/cpanm.pl|perl - App::cpanminus

使用cpanm在线安装 Mojo::Webqq 模块(如果系统已经安装了该模块,执行此步骤会对模块进行升级)

代码语言:javascript复制
$ cpanm Mojo::Webqq

如果安装过程中一直提示下载失败,很可能是因为访问到国外服务器网络比较差

这种情况下可以尝试按如下方式手动指定国内的镜像站点

代码语言:javascript复制
$ cpanm --mirror http://mirrors.163.com/cpan/ Mojo::Webqq

安装失败可能有帮助的解决方法如果你运气不佳,通过cpanm没有一次性安装成功,这里提供了一些可能有用的信息在安装 Mojo::Webqq 的过程中,cpan或者cpanm会帮助我们自动安装很多其他的依赖模块

在众多的依赖模块中,安装经常容易出现问题的主要是 IO::Socket::SSL

IO::Socket::SSL 主要提供了 https 支持,在安装过程中可能会涉及到SSL相关库的编译

对于 Linux 用户,通常采用的是编译安装的方式,系统缺少编译安装必要的环境,则会导致编译失败

对于 Windows 用户,由于不具备良好的编译安装环境,推荐采用一些已经打包比较全面的Perl运行环境

例如比较流行的 strawberryperl 或者 activeperl 的最新版本都默认包含 Mojo::Webqq 的核心依赖模块

RedHat/Centos:

代码语言:javascript复制
$ yum install -y openssl-devel

Ubuntu:

代码语言:javascript复制
$ sudo apt-get install libssl-dev

搞定了编译和运行环境之后,再重新回到 步骤2 安装Mojo::Webqq即可

使用Perl语言编写的Smartqq客户端框架,基于Mojolicious,要求Perl版本5.10 ,可通过插件提供基于HTTP协议的api接口供其他语言或系统调用

郑重声明

本项目完全遵循QQ官方提供的原始功能,不包含任何破坏、盗号等行为,本项目完全开源,目的是为了促进技术交流学习,禁止任何对国家、企业、个人等构成危害的非法用途,否则后果自负

特色功能
  • 支持 群组踢人、禁言、设置/取消管理员、修改群成员名片、邀请好友入群、群签到
  • 支持 获取好友、群组、群成员的真实QQ号码
  • 支持 新增/失去好友、新增/退出群组、新增/失去群成员 等事件提醒(非实时)
  • 支持 Windows/Linux/Mac 多平台,支持docker镜像,易安装部署,不懂Perl也能用
  • 提供 基于HTTP协议的API接口 ,简洁丰富,方便和其他编程语言集成
  • 一个产品狗的倾情之作,代码由内而外都更加注重“用户体验”,外加主人人品极好,你懂的
插件列表

名称

优先级

当前状态

github作者

功能说明

ShowMsg

100

已发布

sjdy521

打印客户端接收和发送的消息

GroupManage

100

已发布

sjdy521

群管理,入群欢迎、限制发图频率等

IRCShell

99

已发布

sjdy521

Linux环境下通过irc客户端使用qq

Openqq

98

已发布

sjdy521

提供qq发送消息api接口

Perlcode

97

已发布

sjdy521

通过qq消息执行perl代码

Perldoc

96

已发布

sjdy521

通过qq消息查询perl文档

Translation

93

已发布

sjdy521

多国语言翻译功能

KnowledgeBase

3

已发布

sjdy521

自定义可编辑问答知识库

Qiandao

1

已发布

sjdy521

QQ群每日签到

PostQRcode

0

已发布

sjdy521

登录二维码发送到邮箱实现远程扫码

UploadQRcode

0

已发布

sjdy521

二维码上传图床获得公网访问url

ShowQRcode

0

已发布

autodataming

调用系统图片查看程序来示二维码(目前仅支持win)

SmartReply

0

已发布

sjdy521

智能聊天回复

插件下载请参考:完整插件列表

效果展示

敲一行命令就能启动一个智能聊天机器人,Perl 和你都如此优雅. Enjoy!

  1. cpanm Mojo::Webqq && perl -MMojo::Webqq -e "Mojo::Webqq->new->load('ShowMsg')->load('SmartReply')->run()"
  2. [15/09/30 15:11:59] [info] 初始化 smartqq 客户端参数...
  3. [15/09/30 15:11:59] [info] 检查验证码...
  4. [15/09/30 15:11:59] [info] 检查结果: 很幸运,本次登录不需要验证码
  5. [15/09/30 15:11:59] [info] 正在获取登录二维码...
  6. [15/09/30 15:11:59] [info] 二维码已下载到本地[ /tmp/mojo_webqq_qrcode_xxx.png ]
  7. [15/09/30 15:12:00] [info] 登录二维码已经发送到邮箱: ******
  8. [15/09/30 15:12:00] [info] 等待手机QQ扫描二维码...
  9. [15/09/30 15:12:43] [info] 手机QQ扫码成功,请在手机上点击[允许登录smartQQ]按钮...
  10. [15/09/30 15:12:46] [info] 检查安全代码...
  11. [15/09/30 15:12:47] [info] 设置登录验证参数...
  12. [15/09/30 15:12:47] [info] 尝试进行登录(2)...
  13. [15/09/30 15:12:47] [info] 登录成功
  14. [15/09/30 15:12:47] [info] 更新个人信息...
  15. [15/09/30 15:12:47] [info] 更新好友信息...
  16. [15/09/30 15:12:47] [info] 更新[ PERL学习交流 ]信息
  17. [15/09/30 15:12:52] [info] 更新[ Mojolicious ]信息
  18. [15/09/30 15:12:55] [info] 开始接收消息...
  19. [15/09/30 14:09:20] [群消息] 小灰|PERL学习交流 : Mojo::Webqq不错哦
  20. [15/09/30 14:10:20] [群消息] 我->PERL学习交流 : 多谢多谢

0 人点赞