[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-10755":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":16,"stars30d":16,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":17,"rankGlobal":10,"rankLanguage":10,"license":18,"archived":19,"fork":19,"defaultBranch":20,"hasWiki":21,"hasPages":19,"topics":22,"createdAt":10,"pushedAt":10,"updatedAt":36,"readmeContent":37,"aiSummary":38,"trendingCount":16,"starSnapshotCount":16,"syncStatus":39,"lastSyncTime":40,"discoverSource":41},10755,"Mojo-Webqq","hexsum\u002FMojo-Webqq","hexsum","【重要通知：WebQQ将在2019年1月1日停止服务，此项目目前已停止维护，感谢大家四年来的一路陪伴】使用Perl语言（不会没关系）编写的smartqq\u002Fwebqq客户端框架（非GUI），可通过插件提供基于HTTP协议的api接口供其他语言或系统调用","",null,"Perl",1704,315,117,13,0,55.5,"BSD 2-Clause \"Simplified\" License",false,"master",true,[23,24,25,26,27,28,29,30,31,32,33,34,35],"api","bot","chat","chatbot","cli","docker","irc","mojo","perl","qq","qqbot","smartqq","webqq","2026-06-12 04:00:52","Mojo-Webqq v2.2.7 [![Build Status](https:\u002F\u002Ftravis-ci.org\u002Fsjdy521\u002FMojo-Webqq.svg?branch=master)](https:\u002F\u002Ftravis-ci.org\u002Fsjdy521\u002FMojo-Webqq) [![Join the chat at https:\u002F\u002Fgitter.im\u002Fsjdy521\u002FMojo-Webqq](https:\u002F\u002Fbadges.gitter.im\u002Fsjdy521\u002FMojo-Webqq.svg)](https:\u002F\u002Fgitter.im\u002Fsjdy521\u002FMojo-Webqq?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![API列表](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fdoc-API%E5%88%97%E8%A1%A8-brightgreen.svg)](API.md) [![QQ群-498880156](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FQQ%E7%BE%A4-498880156-blue.svg)](http:\u002F\u002Fjq.qq.com\u002F?_wv=1027&k=kjVJzo) [![IRC](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FIRC-%E5%AE%98%E6%96%B9%E9%A2%91%E9%81%93-yellow.svg)](http:\u002F\u002Firc.perfi.wang\u002F?channel=#Mojo-Webqq)\n========================\n\n### !!!重要通知：WebQQ将在2019年1月1日停止服务，项目目前已停止维护，感谢大家四年来一路陪伴\n\n使用Perl语言编写的Smartqq客户端框架，基于Mojolicious，要求Perl版本5.10+，可通过插件提供基于HTTP协议的api接口供其他语言或系统调用\n\n### 郑重声明\n\n本项目完全遵循QQ官方提供的原始功能，不包含任何破坏、盗号等行为，本项目完全开源，目的是为了促进技术交流学习，禁止任何对国家、企业、个人等构成危害的非法用途，否则后果自负\n\n### 特色功能\n\n* 支持 账号密码登录（可能已失效），二维码扫码登录\n* 支持 群组踢人、禁言、设置\u002F取消管理员、修改群成员名片、邀请好友入群、群签到（可能失效）\n* 支持 获取好友、群组、群成员的真实QQ号码（可能失效）\n* 支持 新增\u002F失去好友、新增\u002F退出群组、新增\u002F失去群成员 等事件提醒（非实时）\n* 支持 Windows\u002FLinux\u002FMac 多平台，支持docker镜像，易安装部署，不懂Perl也能用\n* 提供 基于HTTP协议的API接口 ，简洁丰富，方便和其他编程语言集成\n* 一个产品经理的倾情之作，代码由内而外都更加注重“用户体验”，外加主人人品极好，你会懂的\n\n### 插件列表\n\n|名称                | 优先级  |当前状态    |github作者    | 功能说明                 \n|:-------------------|:--------|:-----------|:-------------|:----------------------------\n|[ShowMsg](https:\u002F\u002Fmetacpan.org\u002Fpod\u002Fdistribution\u002FMojo-Webqq\u002Fdoc\u002FWebqq.pod#Mojo::Webqq::Plugin::ShowMsg)             |100      |已发布      |sjdy521       |打印客户端接收和发送的消息\n|[GroupManage](https:\u002F\u002Fmetacpan.org\u002Fpod\u002Fdistribution\u002FMojo-Webqq\u002Fdoc\u002FWebqq.pod#Mojo::Webqq::Plugin::GroupManage)         |100      |已发布      |sjdy521       |群管理，入群欢迎、限制发图频率等\n|[IRCShell](https:\u002F\u002Fmetacpan.org\u002Fpod\u002Fdistribution\u002FMojo-Webqq\u002Fdoc\u002FWebqq.pod#Mojo::Webqq::Plugin::IRCShell)            |99       |已发布      |sjdy521       |Linux环境下通过irc客户端使用qq\n|[Openqq](https:\u002F\u002Fmetacpan.org\u002Fpod\u002Fdistribution\u002FMojo-Webqq\u002Fdoc\u002FWebqq.pod#Mojo::Webqq::Plugin::Openqq)              |98       |已发布      |sjdy521       |提供qq发送消息api接口\n|[Perlcode](https:\u002F\u002Fmetacpan.org\u002Fpod\u002Fdistribution\u002FMojo-Webqq\u002Fdoc\u002FWebqq.pod#Mojo::Webqq::Plugin::Perlcode)            |97       |已发布      |sjdy521       |通过qq消息执行perl代码\n|[Perldoc](https:\u002F\u002Fmetacpan.org\u002Fpod\u002Fdistribution\u002FMojo-Webqq\u002Fdoc\u002FWebqq.pod#Mojo::Webqq::Plugin::Perldoc)             |96       |已发布      |sjdy521       |通过qq消息查询perl文档\n|[Translation](https:\u002F\u002Fmetacpan.org\u002Fpod\u002Fdistribution\u002FMojo-Webqq\u002Fdoc\u002FWebqq.pod#Mojo::Webqq::Plugin::Translation)         |93       |已发布| sjdy521 | 多国语言翻译功能\n|[KnowledgeBase](https:\u002F\u002Fmetacpan.org\u002Fpod\u002Fdistribution\u002FMojo-Webqq\u002Fdoc\u002FWebqq.pod#Mojo::Webqq::Plugin::KnowledgeBase)       |3        |已发布      |sjdy521       |自定义可编辑问答知识库\n|[Qiandao](https:\u002F\u002Fmetacpan.org\u002Fpod\u002Fdistribution\u002FMojo-Webqq\u002Fdoc\u002FWebqq.pod#Mojo::Webqq::Plugin::Qiandao)          |1        |已发布      |sjdy521       |QQ群每日签到\n|[PostQRcode](https:\u002F\u002Fmetacpan.org\u002Fpod\u002Fdistribution\u002FMojo-Webqq\u002Fdoc\u002FWebqq.pod#Mojo::Webqq::Plugin::PostQRcode)          |0        |已发布      |sjdy521       |登录二维码发送到邮箱实现远程扫码\n|[UploadQRcode](https:\u002F\u002Fmetacpan.org\u002Fpod\u002Fdistribution\u002FMojo-Webqq\u002Fdoc\u002FWebqq.pod#Mojo::Webqq::Plugin::UploadQRcode)          |0        |已发布      |sjdy521       |二维码上传图床获得公网访问url\n|[ShowQRcode](https:\u002F\u002Fmetacpan.org\u002Fpod\u002Fdistribution\u002FMojo-Webqq\u002Fdoc\u002FWebqq.pod#Mojo::Webqq::Plugin::ShowQRcode)          |0        |已发布      |autodataming  |调用系统图片查看程序来示二维码（目前仅支持win）\n|[SmartReply](https:\u002F\u002Fmetacpan.org\u002Fpod\u002Fdistribution\u002FMojo-Webqq\u002Fdoc\u002FWebqq.pod#Mojo::Webqq::Plugin::SmartReply)          |0        |已发布      |sjdy521       |智能聊天回复\n\n更多插件参考[完整插件列表](Plugin.md)\n\n### 效果展示\n\n敲一行命令就能启动一个智能聊天机器人，Perl 和你都如此优雅. Enjoy!\n\n    cpanm Mojo::Webqq && perl -MMojo::Webqq -e \"Mojo::Webqq->new->load('ShowMsg')->load('SmartReply')->run()\"\n\n```\n[15\u002F09\u002F30 15:11:59] [info] 初始化 smartqq 客户端参数...\n[15\u002F09\u002F30 15:11:59] [info] 检查验证码...\n[15\u002F09\u002F30 15:11:59] [info] 检查结果: 很幸运，本次登录不需要验证码\n[15\u002F09\u002F30 15:11:59] [info] 正在获取登录二维码...\n[15\u002F09\u002F30 15:11:59] [info] 二维码已下载到本地[ \u002Ftmp\u002Fmojo_webqq_qrcode_xxx.png ]\n[15\u002F09\u002F30 15:12:00] [info] 登录二维码已经发送到邮箱: ******\n[15\u002F09\u002F30 15:12:00] [info] 等待手机QQ扫描二维码...\n[15\u002F09\u002F30 15:12:43] [info] 手机QQ扫码成功，请在手机上点击[允许登录smartQQ]按钮...\n[15\u002F09\u002F30 15:12:46] [info] 检查安全代码...\n[15\u002F09\u002F30 15:12:47] [info] 设置登录验证参数...\n[15\u002F09\u002F30 15:12:47] [info] 尝试进行登录(2)...\n[15\u002F09\u002F30 15:12:47] [info] 登录成功\n[15\u002F09\u002F30 15:12:47] [info] 更新个人信息...\n[15\u002F09\u002F30 15:12:47] [info] 更新好友信息...\n[15\u002F09\u002F30 15:12:47] [info] 更新[ PERL学习交流 ]信息\n[15\u002F09\u002F30 15:12:52] [info] 更新[ Mojolicious ]信息\n[15\u002F09\u002F30 15:12:55] [info] 开始接收消息...\n[15\u002F09\u002F30 14:09:20] [群消息] 小灰|PERL学习交流 : Mojo::Webqq不错哦\n[15\u002F09\u002F30 14:10:20] [群消息] 我->PERL学习交流 : 多谢多谢\n```\n\n#### 通过irc客户端在linux终端上使用QQ\n\n```\n\n    +-------------------+                      +----------------+  \n    |  Tencent          |                      | Any IRC Client |\n    |  SmartQQ Server   |                      | wechat、irssi  |\n    +---v-------------^-+                      +-v------------^-+     \n        |             |                          |            |\n        | QQ协议交互  |                          |IRC协议交互 |\n+-- --- |--  - -  --  | - - -   --   -  -   ---  | ---  ----- | --+\n|   +---v-------------^--+                  +----v------------^-+ |   \n|   |                    \u003C——————————————————\u003C                   | |\n|   |   SmartQQ Client   |     QQ - IRC     |  IRC Server       | |\n|   |                    |     协议转换     |  监听本机6667端口 | |\n|   |                    >——————————————————>                   | | \n|   +--------------------+                  +-------------------+ |\n|                                                                 |\n|                                       我们程序实现的部分        | \n+---  - - - -  -- - --  ----  ------  -------  ------  ---    ----+\n\n```\n\n![IRCShell](screenshot\u002FIRCShell.png)\n\n#### IT男装逼利器：如何像黑客一样聊天（图片来自 @動感光波）\n\n![如何像黑客一样聊天](screenshot\u002FHow_to_chat_like_a_hacker.jpg)\n\n#### 更多应用效果 请参见[Mojo-Webqq作品展](Collection.md)\n\n### 安装方法\n\n推荐使用[cpanm](https:\u002F\u002Fmetacpan.org\u002Fpod\u002Fdistribution\u002FApp-cpanminus\u002Fbin\u002Fcpanm)在线安装或升级[Mojo::Webqq](https:\u002F\u002Fmetacpan.org\u002Fpod\u002Fdistribution\u002FMojo-Webqq\u002Fdoc\u002FWebqq.pod)模块, 如果使用docker方式请参见[Docker镜像安装及使用方法](Docker.md)\n\n1. *安装perl*\n  \n    安装之前请先确认下你的系统是否已经安装了Perl，因为除了windows，其他大部分的平台默认都可能已经预装过\n\n    并且你的Perl版本至少5.10.1+，推荐5.14+\n\n    [Perl官网下载页面](https:\u002F\u002Fwww.perl.org\u002Fget.html) 有包含Unix\u002FLinux、Mac OS X、Windows多平台比较全面详细的安装说明\n\n    建议大家尽量选择**Binaries**（二进制预编译）的版本，安装即可使用，比较方便\n\n    |平台    |推荐选择              |下载地址                    |\n    |:-------|:--------------------|:--------------------------|\n    |Windows |1. **StrawberryPerl**\u003Cbr>2. ActivePerl\u003Cbr>3. **Mojo-StrawberryPerl**|[StrawberryPerl下载地址](http:\u002F\u002Fstrawberryperl.com\u002F)\u003Cbr>[Mojo-StrawberryPerl下载地址](https:\u002F\u002Fgithub.com\u002Fsjdy521\u002FMojo-StrawberryPerl)\u003Cbr>[ActivePerl下载地址](http:\u002F\u002Fwww.activestate.com\u002Factiveperl\u002Fdownloads)\u003Cbr>|\n    |Linux   |1. **系统自带**\u003Cbr>2. **yum\u002Fapt等包管理器**\u003Cbr>3. 官方源码编译\u003Cbr>4. ActivePerl\u003Cbr>5. DWIM-Perl|[ActivePerl下载地址](http:\u002F\u002Fwww.activestate.com\u002Factiveperl\u002Fdownloads)\u003Cbr>[DWIM-Perl下载地址](http:\u002F\u002Fdwimperl.com\u002Flinux.html)|\n    |Mac     |1. **系统自带**\u003Cbr>2. ActivePerl|[ActivePerl下载地址](http:\u002F\u002Fwww.activestate.com\u002Factiveperl\u002Fdownloads)|\n  \n    注意：\n      \n    [Mojo-StrawberryPerl](https:\u002F\u002Fgithub.com\u002Fsjdy521\u002FMojo-StrawberryPerl)是基于StrawberryPerl精简打包而成，适用于windows 32位\u002F64位系统\n    \n2. *安装cpanm包管理工具*（如果系统已经安装了cpanm可以忽略此步骤）\n\n    方法a： 通过cpan安装cpanm\n\n        $ cpan -i App::cpanminus\n    \n    方法b： 直接在线安装cpanm\n\n        $ curl -kL https:\u002F\u002Fcpanmin.us | perl - App::cpanminus\n        \n        官方服务器在国外，如果无法访问，可以选择下面的命令：\n        \n        $ curl http:\u002F\u002Fshare-10066126.cos.myqcloud.com\u002Fcpanm.pl|perl - App::cpanminus\n\n3. *使用cpanm在线安装 Mojo::Webqq 模块*（如果系统已经安装了该模块，执行此步骤会对模块进行升级）\n\n        $ cpanm Mojo::Webqq\n    \n    如果安装过程中一直提示下载失败，很可能是因为访问到国外服务器网络比较差\n    \n    这种情况下可以尝试按如下方式手动指定国内的镜像站点\n    \n        $ cpanm --mirror http:\u002F\u002Fmirrors.163.com\u002Fcpan\u002F Mojo::Webqq\n\n4. *安装失败可能有帮助的解决方法*\n        \n    如果你运气不佳，通过cpanm没有一次性安装成功，这里提供了一些可能有用的信息\n\n    在安装 Mojo::Webqq 的过程中，cpan或者cpanm会帮助我们自动安装很多其他的依赖模块\n    \n    在众多的依赖模块中，安装经常容易出现问题的主要是 IO::Socket::SSL\n    \n    IO::Socket::SSL 主要提供了 https 支持，在安装过程中可能会涉及到SSL相关库的编译\n\n    对于 Linux 用户，通常采用的是编译安装的方式，系统缺少编译安装必要的环境，则会导致编译失败\n    \n    对于 Windows 用户，由于不具备良好的编译安装环境，推荐采用一些已经打包比较全面的Perl运行环境\n    \n    例如比较流行的 strawberryperl 或者 activeperl 的最新版本都默认包含 Mojo::Webqq 的核心依赖模块\n\n    RedHat\u002FCentos:\n\n        $ yum install -y openssl-devel\n        \n    Ubuntu:\n\n        $ sudo apt-get install libssl-dev\n    \n    搞定了编译和运行环境之后，再重新回到 步骤2 安装Mojo::Webqq即可\n\n    请尽量在root下安装使用，非root下安装使用参考[FAQ](https:\u002F\u002Fgithub.com\u002Fsjdy521\u002FMojo-Webqq\u002Fblob\u002Fmaster\u002FFAQ.md#11-%E9%9D%9Eroot%E8%B4%A6%E5%8F%B7%E5%AE%89%E8%A3%85%E5%90%8E%E6%97%A0%E6%B3%95%E4%BD%BF%E7%94%A8%E9%97%AE%E9%A2%98)\n    \n    如果仍然有问题，Linux上可以尝试执行如下脚本进行依赖模块检查\n    \n        $ curl -ks \"https:\u002F\u002Fraw.githubusercontent.com\u002Fsjdy521\u002FMojo-Webqq\u002Fmaster\u002Fscript\u002Fcheck_dependencies.pl\"|perl -\n\n### 如何使用\n\n1. *我对Perl很熟悉，是一个专业的Perler*\n\n    该项目是一个纯粹的Perl模块，已经发布到了cpan上，请仔细阅读 `Mojo::Weqq` 模块的[使用文档](https:\u002F\u002Fmetacpan.org\u002Fpod\u002Fdistribution\u002FMojo-Webqq\u002Fdoc\u002FWebqq.pod)\n\n    除此之外，你可以看下 [demo](https:\u002F\u002Fgithub.com\u002Fsjdy521\u002FMojo-Webqq\u002Ftree\u002Fmaster\u002Fdemo) 目录下的更多代码示例\n\n2. *我是对Perl不熟悉，是一个其他语言的开发者，只对提供的消息发送\u002F接收接口感兴趣*\n\n    可以直接把如下代码保存成一个源码文件（必须是UTF-8编码），使用 perl 解释器来运行\n    \n        #!\u002Fusr\u002Fbin\u002Fenv perl\n        use Mojo::Webqq;\n        my ($host,$port,$post_api);\n        \n        $host = \"0.0.0.0\"; #发送消息接口监听地址，没有特殊需要请不要修改\n        $port = 5000;      #发送消息接口监听端口，修改为自己希望监听的端口\n        #$post_api = 'http:\u002F\u002Fxxxx';  #接收到的消息上报接口，如果不需要接收消息上报，可以删除或注释此行\n        \n        my $client = Mojo::Webqq->new();\n        $client->load(\"ShowMsg\");\n        $client->load(\"Openqq\",data=>{listen=>[{host=>$host,port=>$port}], post_api=>$post_api});\n        $client->run();\n    \n    上述代码保存成 xxxx.pl 文件，然后使用 perl 来运行，就会完成 QQ 登录并在本机产生一个监听指定地址端口的 http server\n    \n        $ perl xxxx.pl\n    \n    发送好友消息的接口调用示例\n    \n        http:\u002F\u002F127.0.0.1:5000\u002Fopenqq\u002Fsend_friend_message?uid=xxxxx&content=hello\n        \n        * About to connect() to 127.0.0.1 port 5000 (#0)\n        *   Trying 127.0.0.1...\n        * Connected to 127.0.0.1 (127.0.0.1) port 5000 (#0)\n        > GET \u002Fopenqq\u002Fsend_friend_message?uid==xxxxx&content=hello HTTP\u002F1.1\n        > User-Agent: curl\u002F7.29.0\n        > Host: 127.0.0.1:5000\n        > Accept: *\u002F*\n        > \n        \u003C HTTP\u002F1.1 200 OK\n        \u003C Content-Type: application\u002Fjson;charset=UTF-8\n        \u003C Date: Sun, 13 Dec 2015 04:54:38 GMT\n        \u003C Content-Length: 52\n        \u003C Server: Mojolicious (Perl)\n        \u003C\n        * Connection #0 to host 127.0.0.1 left intact\n        \n        {\"status\":\"发送成功\",\"msg_id\":23910327,\"code\":0}\n    \n    更多接口参数说明参见[API说明文档](API.md)\n    \n3.  *我是一个极客，我只想能够在命令行上通过  IRC 的方式来玩转 QQ 聊天*\n\n    请阅读[IRCShell插件使用步骤](IRC.md)\n\n4. *我是一个 QQ 群主或管理员，我想给自己的群加个机器人群管理功能*\n\n    请关注 [GroupManage 插件使用文档](https:\u002F\u002Fmetacpan.org\u002Fpod\u002Fdistribution\u002FMojo-Webqq\u002Fdoc\u002FWebqq.pod#Mojo::Webqq::Plugin::GroupManage)   \n\n\n### 核心依赖模块\n\n* [Mojolicious](https:\u002F\u002Fmetacpan.org\u002Fpod\u002FMojolicious)\n* [Encode::Locale](https:\u002F\u002Fmetacpan.org\u002Fpod\u002FEncode::Locale)\n\n### 相关文档\n\n* [更新日志](Changes)\n* [开发&配置文档](doc\u002FWebqq.pod)\n* [基于HTTP的API文档](API.md)\n* [FAQ](FAQ.md)\n\n### 官方交流\n\n* [QQ群](http:\u002F\u002Fjq.qq.com\u002F?_wv=1027&k=kjVJzo)\n* [IRC](http:\u002F\u002Firc.perfi.wang\u002F?channel=#Mojo-Webqq)\n\n### 友情链接\n\n*JavaScript*\n* [webqqircd](https:\u002F\u002Fgithub.com\u002FMaskRay\u002Fwebqqircd) 用IRC客户端控制WebQQ(SmartQQ)，类似于wechatircd\n* [qqbot](https:\u002F\u002Fgithub.com\u002Ffloatinghotpot\u002Fqqbot) SmartQQ Robot and API Server, powered by node.js\n* [qqbot](https:\u002F\u002Fgithub.com\u002FScienJus\u002Fqqbot) 基于SmartQQ（WebQQ）的QQ机器人 \u002F a qq robot based on smartqq(webqq) api\n\n*Python*\n* [SmartQQBot](https:\u002F\u002Fgithub.com\u002FYinzo\u002FSmartQQBot) 基于SmartQQ的自动机器人框架\n* [qqbot](https:\u002F\u002Fgithub.com\u002Fpandolia\u002Fqqbot) A conversation robot base on Tencent's SmartQQ\n\n*Java*\n* [smartqq](https:\u002F\u002Fgithub.com\u002FScienJus\u002Fsmartqq) SmartQQ（WebQQ）的Api ，你可以用它实现自己的QQ 机器人\n\n### 赞助奖励\n\n可以通过扫描支付宝付款二维码进行赞助，感谢您的支持和鼓励\n\n![donate](screenshot\u002Fdonate.jpg)\n\n特别致谢 [那些曾经赞助的小伙伴们](https:\u002F\u002Fgithub.com\u002Fsjdy521\u002FMojo-Thanks)\n\n### COPYRIGHT 和 LICENCE\n\nCopyright (C) 2014 by sjdy521\n\nThis library is free software; you can redistribute it and\u002For modify it under [BSD 2-clause \"Simplified\" license](LICENSE)\n","Mojo-Webqq 是一个使用 Perl 语言编写的 SmartQQ 客户端框架，旨在通过插件提供基于 HTTP 协议的 API 接口供其他语言或系统调用。其核心功能包括账号密码及二维码登录、群组管理（如踢人、禁言等）、好友与群成员信息获取以及事件提醒。项目支持多平台部署，易于安装且无需深入了解 Perl 语言即可使用。尽管 WebQQ 已于 2019 年停止服务，此框架仍适合需要构建基于 QQ 的自动化工具或聊天机器人的开发者参考学习。",2,"2026-06-11 03:30:01","top_topic"]