IT男装逼利器:如何像黑客一样聊天 Mojo-Webqq
电影里的黑客们聊天不想我们生活中的一样,用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(二进制预编译)的版本,安装即可使用,比较方便

注意:
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
$ cpan -i App::cpanminus
方法b: 直接在线安装cpanm
$ curl -kLhttps://cpanmin.us | perl - App::cpanminus
官方服务器在国外,如果无法访问,可以选择下面的命令:
$ curl http://share-10066126.cos.myqcloud.com/cpanm.pl|perl – App::cpanminus
使用cpanm在线安装Mojo::Webqq 模块(如果系统已经安装了该模块,执行此步骤会对模块进行升级)
$ cpanm Mojo::Webqq
如果安装过程中一直提示下载失败,很可能是因为访问到国外服务器网络比较差
这种情况下可以尝试按如下方式手动指定国内的镜像站点
$ 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:
$ yum install -y openssl-devel
Ubuntu:
$ 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接口 ,简洁丰富,方便和其他编程语言集成
§ 一个产品狗的倾情之作,代码由内而外都更加注重“用户体验”,外加主人人品极好,你懂的
插件列表

效果展示【点击纯文本查看代码】
敲一行命令就能启动一个智能聊天机器人,Perl和你都如此优雅. Enjoy!
1.
"Mojo::Webqq->new->load('ShowMsg')->load('SmartReply')->run()"
1. [15/09/30 15:11:59] [info] 初始化 smartqq 客户端参数…
2. [15/09/30 15:11:59] [info] 检查验证码…
3. [15/09/30 15:11:59] [info] 检查结果: 很幸运,本次登录不需要验证码
4. [15/09/30 15:11:59] [info] 正在获取登录二维码…
5. [15/09/30 15:11:59] [info] 二维码已下载到本地[ /tmp/mojo_webqq_qrcode_xxx.png ]
6. [15/09/30 15:12:00] [info] 登录二维码已经发送到邮箱: ******
7. [15/09/30 15:12:00] [info] 等待手机QQ扫描二维码…
8. [15/09/30 15:12:43] [info] 手机QQ扫码成功,请在手机上点击[允许登录smartQQ]按钮…
9. [15/09/30 15:12:46] [info] 检查安全代码…
10. [15/09/30 15:12:47] [info] 设置登录验证参数…
11. [15/09/30 15:12:47] [info] 尝试进行登录(2)…
12. [15/09/30 15:12:47] [info] 登录成功
13. [15/09/30 15:12:47] [info] 更新个人信息…
14. [15/09/30 15:12:47] [info] 更新好友信息…
15. [15/09/30 15:12:47] [info] 更新[ PERL学习交流 ]信息
16. [15/09/30 15:12:52] [info] 更新[ Mojolicious ]信息
17. [15/09/30 15:12:55] [info] 开始接收消息…
18. [15/09/30 14:09:20] [群消息] 小灰|PERL学习交流 : Mojo::Webqq不错哦
19. [15/09/30 14:10:20] [群消息] 我->ERL学习交流 : 多谢多谢
福利彩蛋>>>>> 黑客入门必备技能—— 四大热点视频,五大精选进阶课程,我们一起组团开黑~
IT男装逼利器:如何像黑客一样聊天 Mojo-Webqq的更多相关文章
- 用dos命令导出一个文件夹里面所有文件的名字(装逼利器)
首先,当然是在相关的文件夹打开dos命令窗口. 然后,输入如下命令:dir/b >a.txt 如果你非常了解dos命令,那么你一定会觉得这个东西简单到爆,而且我的理解和猜想都有些无知. 但如果你 ...
- 【python 】文件下载进度条(装逼利器)
基础版 import requests url = "http://mp.111ttt.cn/mp3free/81135985.mp3" rsp = requests.get(ur ...
- Linux常用指令指南,终端装逼利器
最近搞了台Macbook Pro,就学习了一下Linux命令,在网上查了些资料,看了本书叫<快乐的 Linux 命令行>,里面涉及到了各个方面的命令. 在此将常用的整理出来,以备将来使用. ...
- 【装逼利器效率软件】一张图问你想不想用Launchy
简述:Launchy博客园很多文章,长篇大论文字太多. 一张图问你想不想用? 长话多说: 一.设置Launchy扫描目录,安装后会默认,个人推荐自定义目录比较好 二.自行建立快捷方式别名文件夹,存放各 ...
- Java操作XML牛逼利器JDOM&DOM4J
JDOM JDOM 是一种使用 XML(标准通用标记语言下的一个子集) 的独特 Java 工具包,用于快速开发 XML 应用 程序. JDOM 官方网站:http://www.jdom.org/ 利 ...
- 你会用Python做出装逼的东西吗
如果我回答:“用Python很牛逼,但不能做出装逼的东西”,那大家来学习“小白的Python入门教程 ”,还有多少意义? 所以,为了让装逼的小船升级为牛逼的巨轮,让大家学完“小白的Python入门教程 ...
- VopSdk一个高逼格微信公众号开发SDK:自动化生产(装逼模式开启)
VopSdk一个高逼格微信公众号开发SDK(源码下载) VopSdk一个高逼格微信公众号开发SDK:自动化生产(装逼模式开启) 针对第一版,我们搞了第二版本,老规矩先定个目标. 一 我们的目标 a.移 ...
- GO语言的进阶之路-Golang字符串处理以及文件操作
GO语言的进阶之路-Golang字符串处理以及文件操作 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们都知道Golang是一门强类型的语言,相比Python在处理一些并发问题也 ...
- Golang字符串处理以及文件操作
一.整数 1.int与uint的初值比较以及其大小. 1 /* 2 #!/usr/bin/env gorun 3 @author :xxxx 4 Blog:http://www.cnblogs.com ...
随机推荐
- editplus 链接FTP失败,超时
最近在用editplus链接服务器是出现了超时连接不上的情况 检查后发现FTP配置没问题 后来打开高级设置后发现没有配置端口号 配置后登陆成功
- centos7 安装 openvswitch
1.安装依赖包: yum -y install make gcc openssl-devel autoconf automake rpm-build redhat-rpm-config yum - ...
- leetcode 27 Romove element
描述: 删除指定元素.不是真的删除,要求把不符合的元素前移. 解决: 非常简单. int removeElement(vector<int>& nums, int val) { ) ...
- iOS load和initialize的区别
可能有些还不清楚load和initialize的区别,下面简单说一下: 首先说一下 + initialize 方法:苹果官方对这个方法有这样的一段描述:这个方法会在 第一次初始化这个类之前 被调用,我 ...
- 32-python代码打包成exe文件-pyinstaller
安装 pyinstaller: pip install pyinstall 简单使用 最简单的使用方式是运行 pyinstaller myscript.py 来生成可执行文件,其中 myscript. ...
- Shared Libraries with Eclipse on 86_64 (64 bits) systems[z]
If you followed my previous post http://linuxtortures.blogspot.com/2012/02/shared-libraries-with-ecl ...
- XAMPP非本地访问被拒绝解决办法
问题场景: 本机搭建一个apache服务器,正常访问XAMPP目录下的页面. 手机接入同一wifi,以电脑ip方式访问该目录下的页面:提示:Access Denied Access to the re ...
- CentOS7防火墙firewall相关操作
1.firewalld的基本使用 启动: systemctl start firewalld 查看状态: systemctl status firewalld 停止: systemctl disabl ...
- LCD相关基础知识
1.什么是LCD? (1)LCD(Liquid Crystal Display)俗称液晶.液晶是一种材料,液晶这种材料具有一种特点:可以在电信号的驱动下液晶分子进行旋转,旋转时会影响透光性, 因此我们 ...
- SpringMVC源码解读 - HandlerMapping
SpringMVC在请求到handler处理器的分发这步是通过HandlerMapping模块解决的.handlerMapping 还处理拦截器. 先看看HandlerMapping的继承树吧 可以大 ...