神代綺凜

[开源] 二次元搜图QQ机器人
↑↑↑推销搜图机器人↑↑↑ 终于算是完成了第一件假期想做的事情
扫描右侧二维码阅读全文
13
2018/07

[开源] 二次元搜图QQ机器人

↑↑↑推销搜图机器人↑↑↑

终于算是完成了第一件假期想做的事情

Head Pic: 「第六駆逐隊」/「ふわり」のイラスト [pixiv]

搜图机器人

QQ:*

抱歉,因各种复杂的原因,本体已经转为私用,现已不再公开允许加好友或群,有兴趣可自行部署玩耍

开源

项目原来是使用酷Q的易语言SDK开发,目前使用 Nodejs 重写并开源

开源版本不含咬人功能,因为懒得移植了……

用法

具体请见 GitHub README

主要功能

  • 搜图/本子
  • 复读
  • OCR
  • 明日方舟公开招募计算器(new)

示例

普通搜图

利用 ascii2d 搜索局部图

搜番

搜本子

其他说明

为什么有时候搜不想要的出结果?

需要说明的是,搜图引擎发现新图片并收录也是需要时间的,因此画师刚上传的画作一般情况下是没办法搜到的

另外,搜图时发送的图片必须是刚好完整的图片,使用以下几种情况的图片会导致大概率搜不到结果:

  • 使用的是原图的局部图,即因剪裁而不完整,此时可以尝试使用 ascii2d 的特征搜索功能
  • 图片被 马赛克/图片马赛克等 遮挡的部分面积过大
  • 截图没截好,留有黑边,例如为了省事直接使用手机截屏或者电脑手动框选截图,这种情况请在搜图前自行编辑裁去与图片无关的部分
  • 清晰度过低的图片
搬瓦工VPS优惠套餐,建站稳如狗,支持支付宝,循环出账94折优惠码BWH3HYATVBJW
年付$47CN2线路,1核/1G内存/20G硬盘/1T@1Gbps【点击购买】($28套餐已经不再销售)
年付$47CN2 GIA线路,1核/512MB内存/10G硬盘/500G@1Gbps【点击购买】(可能已售罄)
Last modification:May 22nd, 2019 at 03:46 pm
If you think my article is useful to you, please feel free to appreciate

Leave a Comment

369 comments

  1. 三三白白  Mac OS X 10.12.5(Mac OS X 10.12.5) / Safari 10.1.1(Safari 10.1.1)
    这难道就是那个桃子越大越像天子的机器人吗
    1. 神代綺凜  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 77.0.3865.90(Google Chrome 77.0.3865.90)
  2. 三千院暗  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 77.0.3865.90(Google Chrome 77.0.3865.90)
    大佬考不考虑给setu功能加个关键词功能,以便满足特殊癖好。。。。
    1. 神代綺凜  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 77.0.3865.120(Google Chrome 77.0.3865.120)
      @三千院暗 这个功能实装了
      不过由于我个人图库图数量有限,tag 涵盖面并不是很广
    2. 神代綺凜  Mac OS X 10.14.6(Mac OS X 10.14.6) / Google Chrome 77.0.3865.90(Google Chrome 77.0.3865.90)
      @三千院暗 在计划中的,可惜一直犯拖延症
      1. 三千院暗  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 77.0.3865.90(Google Chrome 77.0.3865.90)
        @神代綺凜 理解!
        1. 神代綺凜  Mac OS X 10.14.6(Mac OS X 10.14.6) / Google Chrome 77.0.3865.90(Google Chrome 77.0.3865.90)
          @三千院暗 目前在进行中的是给图库加入好看的 r18 图并加以区分,默认还是非 r18 的,之后会加到机器人指令or设置中
          https://api.lolicon.app/setu/?r18=0 非r18
          https://api.lolicon.app/setu/?r18=1 r18
          https://api.lolicon.app/setu/?r18=2 混合
          1. 赈早见  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 77.0.3865.90(Google Chrome 77.0.3865.90)
            @神代綺凜 我已经实现了而且用了很久了 ...用pxer扒了20个tag,然而我用的是mongodb ...可以发给你做到之后的版本中吗?
            1. 神代綺凜  Mac OS X 10.14.6(Mac OS X 10.14.6) / Google Chrome 77.0.3865.120(Google Chrome 77.0.3865.120)
              @赈早见 我都是手动加的,不会去爬,那样不能保证质量
              1. 赈早见  Mac OS X(Mac OS X) / Safari(Safari)
                @神代綺凜 扒的基本都是收藏过了一定数量的,也手工删过质量不好的,平时用起来感觉不错OωO。我还写了好几个插件,希望可以看一下 https://github.com/Ninzore/CQ-picfinder-robot-add-on
                1. 神代綺凜  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 77.0.3865.90(Google Chrome 77.0.3865.90)
                  @赈早见 挺好
                  我现在有想法想把这个项目做成可扩展的,到时候如果要自己加插件就不再需要改原来的文件了,现在太大杂烩了不够模块化
  3. 瓦龙233  Android 8.0.0(Android 8.0.0) / QQbrowser(QQbrowser)
    大大佬,怎么设置WhatAnime为第一搜索番剧链接|´・ω・)ノ
    1. 神代綺凜  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 77.0.3865.90(Google Chrome 77.0.3865.90)
      @瓦龙233 如果你指的是直接发送图片不加参数的情况下默认用 WhatAnime 搜索的话,配置 config 中的 saucenaoDefaultDB 为 anime
      1. 瓦龙233  Android 8.0.0(Android 8.0.0) / QQbrowser(QQbrowser)
        @神代綺凜 多谢指教(๑•̀ㅁ•́ฅ)
  4. gumiku  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 76.0.3809.100(Google Chrome 76.0.3809.100)
    酷q只能在Windows上运行吗,Linux类os的vps能运行吗
    1. 神代綺凜  Mac OS X 10.14.6(Mac OS X 10.14.6) / Google Chrome 76.0.3809.100(Google Chrome 76.0.3809.100)
      @gumiku 可以,有 docker 版,实质上是 wine 模拟 win,你去库Q官网就能看到
  5. eyu  Windows Vista(Windows Vista) / Opera 12.14(Opera 12.14)
    QQ上提示:搜索失败惹 QAQ
    有可能是服务器网络爆炸,请重试一次
    1. eyu  Windows Vista(Windows Vista) / Opera 12.14(Opera 12.14)
      @eyu 我把SSR关闭后可以使用了,不知道是什么问题
      1. 神代綺凜  Mac OS X 10.14.6(Mac OS X 10.14.6) / Google Chrome 76.0.3809.100(Google Chrome 76.0.3809.100)
        @eyu ssr 是不会影响到 node 的请求的,除非你设置了 config 里的 proxy 项
  6. eyu  Windows Vista(Windows Vista) / Opera 12.14(Opera 12.14)
    我下载了node了 然后部署这一步要咋么操作啊QAQ,,

    git clone https://github.com/Tsuk1ko/CQ-picfinder-robot.git
    cd CQ-picfinder-robot
    cp config.default.json config.json
    npm i
  7. 狮子堂戌子  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 74.0.3729.169(Google Chrome 74.0.3729.169)
    机器人反馈的这个https://j.loli.best/#aHR0cHM6Ly9kYW5ib29ydS5kb25tYWkudXMvcG9zdC9zaG93LzI2ODE5MzA=开头的链接打不开。
    提示找不到 is.gdahr0chm6ly9kyw5ib29yds5kb25tywkudxmvcg9zdc9zag93lzi2ode5mza%3D 的服务器 IP 地址。
    所有https://j.loli.best的链接都是这样的情况
    1. 神代綺凜  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 76.0.3809.100(Google Chrome 76.0.3809.100)
      @狮子堂戌子 请更新到最新版本
  8. Dandelion  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 76.0.3809.100(Google Chrome 76.0.3809.100)
    大佬,那个setu怎么配置代理啊,我弄了一个代理,可是发送指令**发setu还是推送的 https://pixiv.net/i/123151561 这种,我用的是免费的酷Q
    1. 神代綺凜  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 76.0.3809.100(Google Chrome 76.0.3809.100)
      @Dandelion 免费的酷Q不能发图
      1. Dandelion  Android 8.1.0(Android 8.1.0) / Google Chrome 76.0.3809.111(Google Chrome 76.0.3809.111)
        @神代綺凜 就是说升级成pro后,会发送图片,这个时候才需要设置代理。没升级就发送链接,不需要设置代理。是这样吗?
        1. 神代綺凜  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 76.0.3809.100(Google Chrome 76.0.3809.100)
          @Dandelion

          这个 pximg 代理并不是硬性的,因为程序本身可以直连下载,只是如果国内网速很慢的话才考虑用别人的代理服务

          1. Dandelion  Android 8.1.0(Android 8.1.0) / Google Chrome 76.0.3809.111(Google Chrome 76.0.3809.111)
            @神代綺凜 懂了,谢谢大佬耐心回复▄█▀█●给跪了
  9. 狮子堂戌子  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 74.0.3729.169(Google Chrome 74.0.3729.169)
    用了1个月,不用自己拖到网页上很方便。不过如果能加个指令google搜图的话就更好了,有时候机器人都搜不到的 反倒是google能找到。例如表漫和别人发来发去的不完整截图
  10. Elis  Windows 10 x64 Edition(Windows 10 x64 Edition) / Firefox 68.0(Firefox 68.0)
    萌新表示该怎么使用呀....没有编程基础(ó﹏ò。)
  11. wangtao  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 73.0.3683.86(Google Chrome 73.0.3683.86)
    折腾了一下午,终于搞还了,大佬,这个明日方舟的功能怎么用了,试了一下不太会用
    1. 神代綺凜  Mac OS X 10.14.5(Mac OS X 10.14.5) / Google Chrome 75.0.3770.142(Google Chrome 75.0.3770.142)
      @wangtao 私聊直接发,群里要@

      内容是公开招募截图加上--akhr

      1. wangtao  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 73.0.3683.86(Google Chrome 73.0.3683.86)
        @神代綺凜 对了,这个不可以搜p站id吗?
        1. 神代綺凜  Mac OS X 10.14.5(Mac OS X 10.14.5) / Google Chrome 75.0.3770.142(Google Chrome 75.0.3770.142)
          @wangtao 结果是看 saucenao 的,结果是 p 站那就是,不是的话可以加--pixiv参数强制指定搜索范围,搜不到你要的结果就是这图没在 p 站里或者 saucenao 还没收录
  12. wangtao  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 73.0.3683.86(Google Chrome 73.0.3683.86)
    node-pre-gyp WARN Using request for node-pre-gyp https download
    [canvas] Success: "C:\Users\wangtao\CQ-picfinder-robot\node_modules\canvas\build\Release\canvas.node" is installed via remote
    npm notice created a lockfile as package-lock.json. You should commit this file.
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.9 (node_modules\fsevents):
    npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.9: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

    这是 npm i时候遇到的问题

  13. Radioactive  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 75.0.3770.142(Google Chrome 75.0.3770.142)
    问一下大大,我遇到一个很奇怪的问题,机器人正常运行一段时间后,突然不回复ascii2d搜索。什么都没有改动过, 回复了“相似度过低... 自动使用ascii2d进行搜索”之后就没了,而且加 “--a2d” 搜图也不会有回复。
    1. 神代綺凜  Mac OS X 10.14.5(Mac OS X 10.14.5) / Google Chrome 75.0.3770.142(Google Chrome 75.0.3770.142)
      @Radioactive 这个问题已知,但是不清楚原因

      经过一段时间之后就会恢复

      1. Radioactive  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 75.0.3770.142(Google Chrome 75.0.3770.142)
        @神代綺凜 对的,其他功能都很正常,ascii2d突然不能用,过一段时间自己又好了,很奇怪...
  14. wangtao  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 73.0.3683.86(Google Chrome 73.0.3683.86)
    Error: Cannot find module 'canvas'
        at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
    npm ERR! code ELIFECYCLE
    npm ERR! errno 1
    npm ERR! cq-picfinder-robot@2.5.4 start: `node index.js`
    npm ERR! Exit status 1
    npm ERR!
    npm ERR! Failed at the cq-picfinder-robot@2.5.4 start script.
    npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
    
    npm ERR! A complete log of this run can be found in:
    npm ERR!     C:\Users\Administrator\AppData\Roaming\npm-cache\_logs\2019-07-28T09_07_23_417Z-debug.log

    555, 这是哪里的问题啊,大佬我第一次上手,只有点python跟linux基础

    1. wangtao  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 73.0.3683.86(Google Chrome 73.0.3683.86)
      @wangtao 好像是缺canvas这个东西,但是npm i 的时候好像报了不少错误,这些软件的配置有什么要求吗,比如32位还是64位之类的
  15. jkmiku  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 75.0.3770.142(Google Chrome 75.0.3770.142)
    大佬救命啊,nodejs用的是LTS版本依旧不行

    $ npm i
    
    > canvas@2.5.0 install E:\CQP\CQ-picfinder-robot\node_modules\canvas
    > node-pre-gyp install --fallback-to-build
    
    node-pre-gyp WARN Using request for node-pre-gyp https download
    1. 神代綺凜  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 75.0.3770.142(Google Chrome 75.0.3770.142)
      @jkmiku 如果你曾经装过 Latest 版本并且在那时候npm i过,你可以尝试重新 clone 一份项目再npm i
      1. jkmiku  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 75.0.3770.142(Google Chrome 75.0.3770.142)
        @神代綺凜 已经解决了!谢谢,是安装canvas的时候网络问题,换了cnpm就正常了╮(╯▽╰)╭
  16. daytime  Windows 10 x64 Edition(Windows 10 x64 Edition) / Firefox 68.0(Firefox 68.0)
    该评论仅登录用户及评论双方可见
    1. 神代綺凜  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 75.0.3770.100(Google Chrome 75.0.3770.100)
      @daytime
      该评论仅登录用户及评论双方可见
      1. daytime  Windows 10 x64 Edition(Windows 10 x64 Edition) / Firefox 68.0(Firefox 68.0)
        @神代綺凜 嗯明白惹
  17. 星の梦  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 75.0.3770.100(Google Chrome 75.0.3770.100)
    感谢大佬的机器人,挺实用的
    不过我这里有个问题,就是运行时间长了,发图片就没反应了,酷QHTTP-API插件日志显示已成功向0/0 Websocket客户端推送事件,我一般是重启node插件就正常了,不过长时间这样也不是办法,请问如何避免这个问题发生?
    1. 神代綺凜  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 75.0.3770.100(Google Chrome 75.0.3770.100)
      @星の梦 你是否有用 pm2 守护运行,如果守护了即使程序出错结束也会自动重启

      我目前没有出现你这种情况,可以稳定运行几个月并且也没有程序意外结束的情况,除非你设置了 mysql 并且连接出现问题

      1. 星の梦  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 75.0.3770.100(Google Chrome 75.0.3770.100)
        @神代綺凜 是用pm2运行的,我看了貌似没--watch参数,还特意加上了--watch参数,不过也没用(没用的话是不是应该去掉啊)进程貌似没有意外结束,只是酷Q处理消息有时候就0/0了,无法发送到node插件,只有重启node插件重新连接下酷Q才行。
        也可能因为我linux vps运行node插件,windows运行酷Q,分别运行的原因(主要是我docker搞不来。。。)
        那么问题来了,求推荐稳定运行的环境~是不是linux环境下node+docker版酷Q好点?
        1. 神代綺凜  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 75.0.3770.100(Google Chrome 75.0.3770.100)
          @星の梦 最好是 Windows 下 node + 酷Q
          1. 星の梦  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 75.0.3770.100(Google Chrome 75.0.3770.100)
            @神代綺凜 OK ,有时间重新布置下
  18. karousi  Windows 7 x64 Edition(Windows 7 x64 Edition) / Google Chrome 72.0.3626.119(Google Chrome 72.0.3626.119)
    大佬可不可以考虑下加上iqdb搜图?

    还有就是群搜图模式现在只有1分钟感觉有点短,可不可以放在配置文件里去修改?

    1. 神代綺凜  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 75.0.3770.100(Google Chrome 75.0.3770.100)
      @karousi iqdb 里的 saucenao 都有,而且 saucenao 更广

      1分钟是1分钟不发图就关,防有些人忘记关的,如果你觉得有必要延长我会在下个版本里加上设置

  19. skychy  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 70.0.3538.25(Google Chrome 70.0.3538.25)
    不会用 出个教程可以吗
  20. 赫Einzbern  Windows 7 x64 Edition(Windows 7 x64 Edition) / Google Chrome 50.0.2661.102(Google Chrome 50.0.2661.102)
    大佬我酷Q和API都搞完了,然后PM2下了不知道有什么用(下完的文件夹名字叫pm2-master),我就直接拿记事本把config.json这个给改了,然后接下去不知道怎么办了qwq
    1. 神代綺凜  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 75.0.3770.100(Google Chrome 75.0.3770.100)
      @赫Einzbern 安装 PM2 的命令在 README 写的足够清楚了,如果还是不会部署建议求助身边有这方面计算机知识的朋友
      1. 赫Einzbern  Windows 7 x64 Edition(Windows 7 x64 Edition) / Google Chrome 50.0.2661.102(Google Chrome 50.0.2661.102)
        @神代綺凜 其实我不知道PM2守护运行怎么弄,因为我下完的PM2是带json这种格式的,里面还有 README,就不太懂这格式的东西要怎么运行qwq
        1. 神代綺凜  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 75.0.3770.142(Google Chrome 75.0.3770.142)
          @赫Einzbern 不需要去下源代码的,npm install pm2 -g这句命令就是安装 pm2,需要你下载安装的只有 nodejs 而已