MiraiForum

    • Register
    • Login
    • Search
    • Popular
    • Recent
    • Unsolved
    • Tags
    • Groups
    • 友情链接

    每日新闻速报, 每日 Bilibili 番剧速报

    插件发布
    44
    93
    18972
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • LinHeLurking
      LinHeLurking last edited by LinHeLurking

      Mirai News Reporter

      一个简单的每日新闻速报/番剧速报 mirai-console 插件

      项目地址:

      https://github.com/LinHeLurking/mirai-news-reporter

      功能

      1. 爬取知乎的一个每日新闻页面, 以图片形式分享. 向机器人说 "今日新闻", "今日速报" 即可触发.
      2. 爬取 B 站的今日番剧列表, 以图片形式分享. 用 "今日动画", "今日番剧" 触发.

      白名单

      为了避免打扰网友, 群聊使用白名单管理. 只有通过命令指定的群聊, 才会在群聊中触发本机器人.

      番剧群组白名单和新闻播报群组白名单是分开的两个名单,你可以使用 /reporter_list 命令来管理这两个名单。
      该命令允许 show, add, remove 三种后缀。其中 add, remove 两个后缀需要跟一个群号。
      在群号之后你可以用 anime, news 来指定操作哪一个白名单(留空表示二者都操作)。

      举例如下:

      将群号为 123456 的群加入番剧、新闻白名单:
      /reporter_list add 123456

      将群号为 123456 的群加入番剧白名单:
      /reporter_list add 123456 anime

      将群号为 123456 的群加入新闻白名单:
      /reporter_list add 123456 news

      更多命令细节可以通过 /help 获取.

      自定义语句

      Bot 在回复命令时的很多语句,都可以通过 /reporter_msg 命令来自定义。

      命令格式: /reporter_msg <key> <list>。

      其中,<key> 的可能取值及其含义见下表。
      <list> 是一个用逗号或分号分割的列表(也可以只是一个词),中文标点和英文标点都可以,但是不能有空格。
      <list> 表示相应的用户发出触发语句可以使用 <list> 中的任何一个,
      而机器人回复的语句会在列表中随机选取。

      key 默认值 含义
      dailyTriggers 今日,每日,日常,daily,Daily "今日番剧"/“每日新闻” 中的 “今日/每日”
      animeTriggers 番剧,动画,B站番剧,B站番剧 "今日番剧"/“每日动画” 中的 “番剧/动画”
      newsTriggers 新闻,速报,新闻速报 "今日新闻"/“每日速报” 中的 “新闻/速报”
      waitMessages 稍等哦QwQ 需要进行长加载时的提示语
      animeDailyMessages 早上好呀,这是今天的B站番剧\n(•̀ω•́)✧ 早上的自动动画播报提示
      animeReplyMessages 这是今天的B站番剧\n(•̀ω•́)✧ 用关键词触发播报后的回复语
      noAnimeMessages 好像今天没有放送呢>_< 今天没有番剧时的提示语
      newsDailyMessages 这是今天的新闻速报\nq(≧▽≦q) 早上的自动新闻播报提示
      newsReplyMessages "这是今天的新闻速报 \nq(≧▽≦q)" 用关键词触发播报后的回复语
      noDisturbingGroupMessages 为了防止打扰到网友,这个群不在日报白名单呢QwQ 白名单提示
      errorMessages 出错啦,等会再试试吧 ̄へ ̄ 错误提示

      上述的 key,写成单数形式也 OK

      效果展示

      目前排版还不是很好, 以后找机会继续优化.

      效果展示:

      今日番剧:

      000000000-000000000-00F92DB7B9564739595DD98104249079

      今日新闻:

      000000000-000000000-97C34B229D32E4E897AE6F268A950E3B

      EnderAvaritia 1 Reply Last reply Reply Quote 4
      • _
        _Casual last edited by

        This post is deleted!
        LinHeLurking 1 Reply Last reply Reply Quote 0
        • LinHeLurking
          LinHeLurking @_Casual last edited by

          @_casual 你说的是什么情况?

          _ 1 Reply Last reply Reply Quote 0
          • _
            _Casual @LinHeLurking last edited by

            This post is deleted!
            _ 1 Reply Last reply Reply Quote 0
            • _
              _Casual @_Casual last edited by

              This post is deleted!
              1 Reply Last reply Reply Quote 0
              • 猫
                猫外星人 last edited by

                作者 这jar文件是放在根目录的plugin里面吗 我怎么运行之后就是一屏幕红码

                琉 1 Reply Last reply Reply Quote 0
                • S
                  SELDON666 last edited by

                  作者好!插件正常运行了大概3天之后就出现了插件里生成了图片但无法发送到群里的情况,只有在小窗机器人时才有显示图片,插件没有报错,请问可能是什么原因呢

                  H 1 Reply Last reply Reply Quote 1
                  • H
                    HaMan @SELDON666 last edited by

                    @seldon666 可能是账号被风控了

                    1 Reply Last reply Reply Quote 0
                    • F
                      FridayAnubis last edited by

                      作者可以加一个指定群聊的每日自动发送功能吗!

                      LinHeLurking 1 Reply Last reply Reply Quote 0
                      • L
                        luis last edited by

                        请问一下/help没用是什么原因(大雾)

                        LinHeLurking 1 Reply Last reply Reply Quote 0
                        • EnderAvaritia
                          EnderAvaritia @LinHeLurking last edited by

                          @linhelurking 好像出现了一些bug。

                          2021-10-25 10:14:31 E/Reporter: kotlinx.serialization.json.internal.JsonDecodingException: Unexpected JSON token at offset 6123: Encountered an unknown key 'delay_id'.
                          Use 'ignoreUnknownKeys = true' in 'Json {}' builder to ignore unknown keys.
                          JSON input: .....f69c64487efad.png","delay":1,"delay_id":400,"delay_index":"第.....
                          kotlinx.serialization.json.internal.JsonDecodingException: Unexpected JSON token at offset 6123: Encountered an unknown key 'delay_id'.
                          Use 'ignoreUnknownKeys = true' in 'Json {}' builder to ignore unknown keys.
                          JSON input: .....f69c64487efad.png","delay":1,"delay_id":400,"delay_index":"第.....
                                  at kotlinx.serialization.json.internal.JsonExceptionsKt.JsonDecodingException(JsonExceptions.kt:24)
                                  at kotlinx.serialization.json.internal.JsonExceptionsKt.JsonDecodingException(JsonExceptions.kt:32)
                                  at kotlinx.serialization.json.internal.JsonLexer.fail(JsonLexer.kt:479)
                                  at kotlinx.serialization.json.internal.JsonLexer.failOnUnknownKey(JsonLexer.kt:475)
                                  at kotlinx.serialization.json.internal.StreamingJsonDecoder.handleUnknown(StreamingJsonDecoder.kt:154)
                                  at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeObjectIndex(StreamingJsonDecoder.kt:143)
                                  at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeElementIndex(StreamingJsonDecoder.kt:75)
                                  at online.ruin_of_future.reporter.AnimeInfo$$serializer.deserialize(AnimeCrawler.kt:19)
                                  at online.ruin_of_future.reporter.AnimeInfo$$serializer.deserialize(AnimeCrawler.kt:19)
                                  at kotlinx.serialization.json.internal.PolymorphicKt.decodeSerializableValuePolymorphic(Polymorphic.kt:63)
                                  at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:32)
                                  at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
                                  at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableElement(AbstractDecoder.kt:70)
                                  at kotlinx.serialization.encoding.CompositeDecoder$DefaultImpls.decodeSerializableElement$default(Decoding.kt:535)
                                  at kotlinx.serialization.internal.ListLikeSerializer.readElement(CollectionSerializers.kt:80)
                                  at kotlinx.serialization.internal.AbstractCollectionSerializer.readElement$default(CollectionSerializers.kt:51)
                                  at kotlinx.serialization.internal.AbstractCollectionSerializer.merge(CollectionSerializers.kt:36)
                                  at kotlinx.serialization.internal.AbstractCollectionSerializer.deserialize(CollectionSerializers.kt:43)
                                  at kotlinx.serialization.json.internal.PolymorphicKt.decodeSerializableValuePolymorphic(Polymorphic.kt:63)
                                  at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:32)
                                  at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
                                  at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableElement(AbstractDecoder.kt:70)
                                  at online.ruin_of_future.reporter.ResultByDate$$serializer.deserialize(AnimeCrawler.kt:47)
                                  at online.ruin_of_future.reporter.ResultByDate$$serializer.deserialize(AnimeCrawler.kt:47)
                                  at kotlinx.serialization.json.internal.PolymorphicKt.decodeSerializableValuePolymorphic(Polymorphic.kt:63)
                                  at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:32)
                                  at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
                                  at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableElement(AbstractDecoder.kt:70)
                                  at kotlinx.serialization.encoding.CompositeDecoder$DefaultImpls.decodeSerializableElement$default(Decoding.kt:535)
                                  at kotlinx.serialization.internal.ListLikeSerializer.readElement(CollectionSerializers.kt:80)
                                  at kotlinx.serialization.internal.AbstractCollectionSerializer.readElement$default(CollectionSerializers.kt:51)
                                  at kotlinx.serialization.internal.AbstractCollectionSerializer.merge(CollectionSerializers.kt:36)
                                  at kotlinx.serialization.internal.AbstractCollectionSerializer.deserialize(CollectionSerializers.kt:43)
                                  at kotlinx.serialization.json.internal.PolymorphicKt.decodeSerializableValuePolymorphic(Polymorphic.kt:63)
                                  at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:32)
                                  at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
                                  at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableElement(AbstractDecoder.kt:70)
                                  at online.ruin_of_future.reporter.TimeLineInfo$$serializer.deserialize(AnimeCrawler.kt:60)
                                  at online.ruin_of_future.reporter.TimeLineInfo$$serializer.deserialize(AnimeCrawler.kt:60)
                                  at kotlinx.serialization.json.internal.PolymorphicKt.decodeSerializableValuePolymorphic(Polymorphic.kt:63)
                                  at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:32)
                                  at kotlinx.serialization.json.Json.decodeFromString(Json.kt:95)
                                  at online.ruin_of_future.reporter.AnimeCrawler.getData(AnimeCrawler.kt:210)
                                  at online.ruin_of_future.reporter.AnimeCrawler.animeByDate(AnimeCrawler.kt:178)
                                  at online.ruin_of_future.reporter.AnimeCrawler.animeToday(AnimeCrawler.kt:197)
                                  at online.ruin_of_future.reporter.ReporterPlugin$onEnable$sendAnimeToTarget$1.invokeSuspend(App.kt:113)
                                  at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
                                  at kotlinx.coroutines.internal.ScopeCoroutine.afterResume(Scopes.kt:33)
                                  at kotlinx.coroutines.AbstractCoroutine.resumeWith(AbstractCoroutine.kt:102)
                                  at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
                                  at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
                                  at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
                                  at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
                                  at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
                                  at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
                          
                          LinHeLurking 1 Reply Last reply Reply Quote 2
                          • G
                            greatwo2 last edited by

                            白名单命令是啥,控制台输/help没找到

                            LinHeLurking 1 Reply Last reply Reply Quote 0
                            • LinHeLurking
                              LinHeLurking @EnderAvaritia last edited by

                              @enderavaritia 谢谢反馈,这个是有番剧停播了,当时写的时候没注意到还有这种情况,目前已经修复了。在 Github 的最新 release 即可找到。

                              1 Reply Last reply Reply Quote 0
                              • LinHeLurking
                                LinHeLurking @FridayAnubis last edited by

                                @fridayanubis 有这个功能呀,添加到群聊白名单就行了

                                1 Reply Last reply Reply Quote 1
                                • LinHeLurking
                                  LinHeLurking @luis last edited by

                                  @luis 我不清楚为什么。有可能你没有安装 chat-command 插件导致在聊天中不能运行指令?

                                  1 Reply Last reply Reply Quote 0
                                  • LinHeLurking
                                    LinHeLurking @greatwo2 last edited by

                                    @greatwo2 help 是可以正常运行的呀。

                                    白名单命令有两类,新闻播报和动画播报是分开的。

                                    /news_group add <target>
                                    /news_group 添加 <target>
                                    /news_group list
                                    /news_group 显示
                                    /news_group 展示
                                    /news_group show
                                    /news_group delete <target>
                                    /news_group remove <target>
                                    
                                    /news_group 删除 <target>
                                    /news_group 移除 <target>
                                    /anime_group add <target>
                                    /anime_group 添加 <target>
                                    /anime_group list
                                    /anime_group 显示
                                    /anime_group 展示
                                    /anime_group show
                                    /anime_group delete <target>
                                    /anime_group remove <target>
                                    /anime_group 删除 <target>
                                    /anime_group 移除 <target>
                                    
                                    1 Reply Last reply Reply Quote 0
                                    • 1
                                      1072324725 last edited by

                                      作者大大,我这里私聊发/help机器人也没反应,发/news_group list也没有反应。但是私聊每日新闻这些又有回应。

                                      G 1 Reply Last reply Reply Quote 0
                                      • G
                                        guagua0826 @1072324725 last edited by

                                        @1072324725 我是在控制台里面发的/help,可以实现效果

                                        1 Reply Last reply Reply Quote 0
                                        • EnderAvaritia
                                          EnderAvaritia last edited by

                                          似乎出了点问题。

                                          cfffe500-6839-4185-83ef-9928808740f6-image.png
                                          3deb4a09-b892-4cd5-9fa5-c11da9e80db9-image.png

                                          2021-12-30 10:46:48 V/Bot.385805595: Group(791616042) <- 这是今天的新闻速报 \nq(≧▽≦q)
                                          2021-12-30 10:46:48 V/Bot.385805595: Event: GroupMessagePostSendEvent(target=Group(791616042), message=这是今天的新闻速 报
                                          q(≧▽≦q), exception=null, receipt=net.mamoe.mirai.message.MessageReceipt@2751b398)
                                          2021-12-30 10:46:48 V/Bot.385805595: Event: BeforeImageUploadEvent(target=Group(791616042), source=net.mamoe.mirai.internal.utils.ExternalResourceImplByFile@5e19891b)
                                          2021-12-30 10:46:49 V/Bot.385805595: Event: Succeed(target=Group(791616042), source=net.mamoe.mirai.internal.utils.ExternalResourceImplByFile@5e19891b, image=[mirai:image:{F97E56DB-CF27-9021-1FC3-F859CB1D894C}.png])
                                          2021-12-30 10:46:49 V/Bot.385805595: Event: GroupMessagePreSendEvent(target=Group(791616042), message=[mirai:image:{F97E56DB-CF27-9021-1FC3-F859CB1D894C}.png])
                                          2021-12-30 10:46:52 V/Bot.385805595: Group(791616042) <- [mirai:image:{F97E56DB-CF27-9021-1FC3-F859CB1D894C}.png]
                                          2021-12-30 10:46:52 V/Bot.385805595: Event: GroupMessagePostSendEvent(target=Group(791616042), message=[mirai:image:{F97E56DB-CF27-9021-1FC3-F859CB1D894C}.png], exception=null, receipt=net.mamoe.mirai.message.MessageReceipt@3abca2af)
                                          
                                          1 Reply Last reply Reply Quote 0
                                          • L
                                            laowang7z last edited by

                                            这东西怎么下载

                                            devilk6666 1 Reply Last reply Reply Quote 1
                                            • 1
                                            • 2
                                            • 3
                                            • 4
                                            • 5
                                            • 1 / 5
                                            • First post
                                              Last post
                                            Powered by Mamoe Technologies & NodeBB | 友情链接 | 服务监控 | Contact