From 524c80926c3d5451eab01a3f6eaacd870cd95c75 Mon Sep 17 00:00:00 2001 From: Ray Date: Mon, 23 May 2022 22:32:19 +0800 Subject: [PATCH 1/8] feat: add ReceiveVipPrivilege appservice for separate task --- .../IReceiveVipPrivilegeAppService.cs | 15 ++++ .../ReceiveVipPrivilegeAppService.cs | 87 +++++++++++++++++++ .../Extensions/ServiceCollectionExtension.cs | 1 + .../Options/ReceiveVipPrivilegeOptions.cs | 13 +++ src/Ray.BiliBiliTool.Console/appsettings.json | 4 + .../VipPrivilegeDomainService.cs | 10 ++- 6 files changed, 127 insertions(+), 3 deletions(-) create mode 100644 src/Ray.BiliBiliTool.Application.Contracts/IReceiveVipPrivilegeAppService.cs create mode 100644 src/Ray.BiliBiliTool.Application/ReceiveVipPrivilegeAppService.cs create mode 100644 src/Ray.BiliBiliTool.Config/Options/ReceiveVipPrivilegeOptions.cs diff --git a/src/Ray.BiliBiliTool.Application.Contracts/IReceiveVipPrivilegeAppService.cs b/src/Ray.BiliBiliTool.Application.Contracts/IReceiveVipPrivilegeAppService.cs new file mode 100644 index 000000000..628382bec --- /dev/null +++ b/src/Ray.BiliBiliTool.Application.Contracts/IReceiveVipPrivilegeAppService.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Text; + +namespace Ray.BiliBiliTool.Application.Contracts +{ + /// + /// 领取大会员B币权益 + /// + [Description("ReceiveVipPrivilege")] + public interface IReceiveVipPrivilegeAppService : IAppService + { + } +} diff --git a/src/Ray.BiliBiliTool.Application/ReceiveVipPrivilegeAppService.cs b/src/Ray.BiliBiliTool.Application/ReceiveVipPrivilegeAppService.cs new file mode 100644 index 000000000..ca2ae6039 --- /dev/null +++ b/src/Ray.BiliBiliTool.Application/ReceiveVipPrivilegeAppService.cs @@ -0,0 +1,87 @@ +using System; +using System.Collections.Generic; +using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Options; +using Ray.BiliBiliTool.Agent.BiliBiliAgent.Dtos; +using Ray.BiliBiliTool.Application.Attributes; +using Ray.BiliBiliTool.Application.Contracts; +using Ray.BiliBiliTool.Config; +using Ray.BiliBiliTool.DomainService.Interfaces; + +namespace Ray.BiliBiliTool.Application +{ + public class ReceiveVipPrivilegeAppService : AppService, IReceiveVipPrivilegeAppService + { + private readonly ILogger _logger; + private readonly IConfiguration _configuration; + private readonly IAccountDomainService _accountDomainService; + private readonly IVipPrivilegeDomainService _vipPrivilegeDomainService; + private readonly IAccountDomainService _loginDomainService; + private readonly Dictionary _expDic; + + public ReceiveVipPrivilegeAppService( + IConfiguration configuration, + ILogger logger, + IAccountDomainService accountDomainService, + IVipPrivilegeDomainService vipPrivilegeDomainService, + IAccountDomainService loginDomainService, + IOptionsMonitor> dicOptions + ) + { + _configuration = configuration; + _logger = logger; + _accountDomainService = accountDomainService; + _vipPrivilegeDomainService = vipPrivilegeDomainService; + _loginDomainService = loginDomainService; + _expDic = dicOptions.Get(Constants.OptionsNames.ExpDictionaryName); + + } + + [TaskInterceptor("领取大会员福利")] + public override void DoTask() + { + UserInfo userInfo = Login(); + + ReceiveVipPrivilege(ref userInfo); + } + + /// + /// 登录 + /// + /// + [TaskInterceptor("登录")] + private UserInfo Login() + { + UserInfo userInfo = _loginDomainService.LoginByCookie(); + if (userInfo == null) throw new Exception("登录失败,请检查Cookie");//终止流程 + + _expDic.TryGetValue("每日登录", out int exp); + _logger.LogInformation("登录成功,经验+{exp} √", exp); + + return userInfo; + } + + /// + /// 每月领取大会员福利 + /// + [TaskInterceptor("领取", rethrowWhenException: false)] + private void ReceiveVipPrivilege(ref UserInfo userInfo) + { + var suc = _vipPrivilegeDomainService.ReceiveVipPrivilege(userInfo); + + //如果领取成功,需要刷新账户信息(比如B币余额) + if (suc) + { + try + { + userInfo = _loginDomainService.LoginByCookie(); + } + catch (Exception ex) + { + _logger.LogError("领取福利成功,但之后刷新用户信息时异常,信息:{msg}", ex.Message); + } + } + } + } +} diff --git a/src/Ray.BiliBiliTool.Config/Extensions/ServiceCollectionExtension.cs b/src/Ray.BiliBiliTool.Config/Extensions/ServiceCollectionExtension.cs index e3be2bf0d..f62ac0c30 100644 --- a/src/Ray.BiliBiliTool.Config/Extensions/ServiceCollectionExtension.cs +++ b/src/Ray.BiliBiliTool.Config/Extensions/ServiceCollectionExtension.cs @@ -24,6 +24,7 @@ public static IServiceCollection AddBiliBiliConfigs(this IServiceCollection serv .Configure(configuration.GetSection("LiveLotteryTaskConfig")) .Configure(configuration.GetSection("UnfollowBatchedTaskConfig")) .Configure(configuration.GetSection("Security")) + .Configure(configuration.GetSection("ReceiveVipPrivilegeConfig")) .Configure>(Constants.OptionsNames.ExpDictionaryName, configuration.GetSection("Exp")) .Configure>(Constants.OptionsNames.DonateCoinCanContinueStatusDictionaryName, configuration.GetSection("DonateCoinCanContinueStatus")); diff --git a/src/Ray.BiliBiliTool.Config/Options/ReceiveVipPrivilegeOptions.cs b/src/Ray.BiliBiliTool.Config/Options/ReceiveVipPrivilegeOptions.cs new file mode 100644 index 000000000..5d17a9c59 --- /dev/null +++ b/src/Ray.BiliBiliTool.Config/Options/ReceiveVipPrivilegeOptions.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Ray.BiliBiliTool.Config.Options +{ + public class ReceiveVipPrivilegeOptions + { + public bool IsEnable { get; set; } = true; + } +} diff --git a/src/Ray.BiliBiliTool.Console/appsettings.json b/src/Ray.BiliBiliTool.Console/appsettings.json index 158c7f568..28a0e5d76 100644 --- a/src/Ray.BiliBiliTool.Console/appsettings.json +++ b/src/Ray.BiliBiliTool.Console/appsettings.json @@ -34,6 +34,10 @@ "RetainUids": "108569350" //白名单(保留的UpId),多个用英文都好分隔,配置后,批量取关时不会取关配置的Up }, + "ReceiveVipPrivilegeConfig": { + "IsEnable": true //开关 + }, + //安全相关配置 "Security": { "IsSkipDailyTask": false, //是否跳过执行任务,用于特殊情况下,通过配置灵活的开启和关闭任务 diff --git a/src/Ray.BiliBiliTool.DomainService/VipPrivilegeDomainService.cs b/src/Ray.BiliBiliTool.DomainService/VipPrivilegeDomainService.cs index c38597667..df25e76a3 100644 --- a/src/Ray.BiliBiliTool.DomainService/VipPrivilegeDomainService.cs +++ b/src/Ray.BiliBiliTool.DomainService/VipPrivilegeDomainService.cs @@ -18,17 +18,19 @@ public class VipPrivilegeDomainService : IVipPrivilegeDomainService private readonly IDailyTaskApi _dailyTaskApi; private readonly DailyTaskOptions _dailyTaskOptions; private readonly BiliCookie _biliBiliCookie; + private readonly ReceiveVipPrivilegeOptions _receiveVipPrivilegeOptionsce; public VipPrivilegeDomainService( ILogger logger, IDailyTaskApi dailyTaskApi, BiliCookie biliBiliCookieOptions, - IOptionsMonitor dailyTaskOptions - ) + IOptionsMonitor dailyTaskOptions, + IOptionsMonitor receiveVipPrivilegeOptionsce) { _logger = logger; _dailyTaskApi = dailyTaskApi; _dailyTaskOptions = dailyTaskOptions.CurrentValue; + _receiveVipPrivilegeOptionsce = receiveVipPrivilegeOptionsce.CurrentValue; _biliBiliCookie = biliBiliCookieOptions; } @@ -38,7 +40,7 @@ IOptionsMonitor dailyTaskOptions /// public bool ReceiveVipPrivilege(UserInfo userInfo) { - if (_dailyTaskOptions.DayOfReceiveVipPrivilege == 0) + if (!_receiveVipPrivilegeOptionsce.IsEnable) { _logger.LogInformation("已配置为关闭,跳过"); return false; @@ -52,6 +54,7 @@ public bool ReceiveVipPrivilege(UserInfo userInfo) return false; } + /* int targetDay = _dailyTaskOptions.DayOfReceiveVipPrivilege == -1 ? 1 : _dailyTaskOptions.DayOfReceiveVipPrivilege; @@ -65,6 +68,7 @@ public bool ReceiveVipPrivilege(UserInfo userInfo) _logger.LogInformation("跳过"); return false; } + */ var suc1 = ReceiveVipPrivilege(1); var suc2 = ReceiveVipPrivilege(2); From 0447fd4cd4d48ea9634d464b369fd64eb2a86172 Mon Sep 17 00:00:00 2001 From: Chance Luo Date: Tue, 21 Jun 2022 23:13:40 +0800 Subject: [PATCH 2/8] Add MangaRead in DailyTask (#197) --- .../BiliBiliAgent/Interfaces/IMangaApi.cs | 9 ++++++++- .../DailyTaskAppService.cs | 11 ++++++++++- .../Interfaces/IMangaDomainService.cs | 5 +++++ .../MangaDomainService.cs | 18 ++++++++++++++++++ 4 files changed, 41 insertions(+), 2 deletions(-) diff --git a/src/Ray.BiliBiliTool.Agent/BiliBiliAgent/Interfaces/IMangaApi.cs b/src/Ray.BiliBiliTool.Agent/BiliBiliAgent/Interfaces/IMangaApi.cs index 8d23b4538..903d5405c 100644 --- a/src/Ray.BiliBiliTool.Agent/BiliBiliAgent/Interfaces/IMangaApi.cs +++ b/src/Ray.BiliBiliTool.Agent/BiliBiliAgent/Interfaces/IMangaApi.cs @@ -21,6 +21,14 @@ public interface IMangaApi : IBiliBiliApi [HttpPost("/twirp/activity.v1.Activity/ClockIn?platform={platform}")] Task ClockIn(string platform); + /// + /// 漫画阅读 + /// + /// + /// + [HttpPost("/twirp/bookshelf.v1.Bookshelf/AddHistory?platform={platform}&comic_id=27355&ep_id=381662")] + Task ReadManga(string platform); + /// /// 获取会员漫画奖励 /// @@ -28,6 +36,5 @@ public interface IMangaApi : IBiliBiliApi /// [HttpPost("/twirp/user.v1.User/GetVipReward?reason_id={reason_id}")] Task> ReceiveMangaVipReward(int reason_id); - } } diff --git a/src/Ray.BiliBiliTool.Application/DailyTaskAppService.cs b/src/Ray.BiliBiliTool.Application/DailyTaskAppService.cs index f71332138..7fd5aeefa 100644 --- a/src/Ray.BiliBiliTool.Application/DailyTaskAppService.cs +++ b/src/Ray.BiliBiliTool.Application/DailyTaskAppService.cs @@ -68,7 +68,7 @@ public override void DoTask() //签到: LiveSign(); MangaSign(); - + MangaRead(); ExchangeSilver2Coin(); //领福利: @@ -190,6 +190,15 @@ private void MangaSign() _mangaDomainService.MangaSign(); } + /// + /// 漫画阅读 + /// + [TaskInterceptor("漫画阅读", rethrowWhenException: false)] + private void MangaRead() + { + _mangaDomainService.MangaRead(); + } + /// /// 每月获取大会员漫画权益 /// diff --git a/src/Ray.BiliBiliTool.DomainService/Interfaces/IMangaDomainService.cs b/src/Ray.BiliBiliTool.DomainService/Interfaces/IMangaDomainService.cs index 028e52156..be3a0b5f4 100644 --- a/src/Ray.BiliBiliTool.DomainService/Interfaces/IMangaDomainService.cs +++ b/src/Ray.BiliBiliTool.DomainService/Interfaces/IMangaDomainService.cs @@ -15,6 +15,11 @@ public interface IMangaDomainService : IDomainService /// void MangaSign(); + /// + /// 阅读 + /// + void MangaRead(); + /// /// 获取大会员权益 /// diff --git a/src/Ray.BiliBiliTool.DomainService/MangaDomainService.cs b/src/Ray.BiliBiliTool.DomainService/MangaDomainService.cs index 2223313d5..a0b53f9eb 100644 --- a/src/Ray.BiliBiliTool.DomainService/MangaDomainService.cs +++ b/src/Ray.BiliBiliTool.DomainService/MangaDomainService.cs @@ -59,6 +59,24 @@ public void MangaSign() } } + /// + /// 漫画阅读 + /// + public void MangaRead() + { + BiliApiResponse response = _mangaApi.ReadManga(_dailyTaskOptions.DevicePlatform).GetAwaiter().GetResult(); + + if (response.Code == 0) + { + _logger.LogInformation("【漫画阅读】成功, 阅读漫画为:堀与宫村"); + } + else + { + _logger.LogInformation("【漫画阅读】失败"); + _logger.LogInformation("【原因】{msg}", response.Message); + } + } + /// /// 获取大会员漫画权益 /// From a57d2a70ca16aaad2c3630f1d6527b734fd1e76f Mon Sep 17 00:00:00 2001 From: Ray Date: Sat, 13 Aug 2022 23:17:40 +0800 Subject: [PATCH 3/8] feat: add sh for receiveVipPrivilege task --- .../bili_dev_task_receiveVipPrivilege.sh | 17 +++++++++++++++++ .../bili_task_receiveVipPrivilege.sh | 17 +++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 qinglong/DefaultTasks/bili_dev_task_receiveVipPrivilege.sh create mode 100644 qinglong/DefaultTasks/bili_task_receiveVipPrivilege.sh diff --git a/qinglong/DefaultTasks/bili_dev_task_receiveVipPrivilege.sh b/qinglong/DefaultTasks/bili_dev_task_receiveVipPrivilege.sh new file mode 100644 index 000000000..82c214ebc --- /dev/null +++ b/qinglong/DefaultTasks/bili_dev_task_receiveVipPrivilege.sh @@ -0,0 +1,17 @@ +#!/usr/bin/env bash +# new Env("bili领取大会员福利[dev先行版]") +# cron 10 0 * * * bili_dev_task_receiveVipPrivilege.sh + +dir_shell=$QL_DIR/shell +. $dir_shell/share.sh + +bili_repo="raywangqvq_bilibilitoolpro_develop" + +echo "repo目录: $dir_repo" +bili_repo_dir="$(find $dir_repo -type d -name $bili_repo | head -1)" +echo -e "bili仓库目录: $bili_repo_dir\n" + +cd $bili_repo_dir +export ENVIRONMENT=Production && \ +export Ray_RunTasks=ReceiveVipPrivilege && \ +dotnet run --project ./src/Ray.BiliBiliTool.Console diff --git a/qinglong/DefaultTasks/bili_task_receiveVipPrivilege.sh b/qinglong/DefaultTasks/bili_task_receiveVipPrivilege.sh new file mode 100644 index 000000000..f39dc74f7 --- /dev/null +++ b/qinglong/DefaultTasks/bili_task_receiveVipPrivilege.sh @@ -0,0 +1,17 @@ +#!/usr/bin/env bash +# new Env("bili领取大会员福利") +# cron 20 0 * * * bili_task_receiveVipPrivilege.sh + +dir_shell=$QL_DIR/shell +. $dir_shell/share.sh + +bili_repo="raywangqvq_bilibilitoolpro" + +echo "repo目录: $dir_repo" +bili_repo_dir="$(find $dir_repo -type d -name $bili_repo | head -1)" +echo -e "bili仓库目录: $bili_repo_dir\n" + +cd $bili_repo_dir +export ENVIRONMENT=Production && \ +export Ray_RunTasks=ReceiveVipPrivilege && \ +dotnet run --project ./src/Ray.BiliBiliTool.Console From 9f30cc9a1d2982ebb56d60b0dfdfeecd4d2fa6b0 Mon Sep 17 00:00:00 2001 From: Ray Date: Sat, 13 Aug 2022 23:20:51 +0800 Subject: [PATCH 4/8] chore: update change log --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5b397a8a6..25e7f1d11 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -43,3 +43,4 @@ - 【#107】新增自动检测并关闭长时无状态issues的actions:no-response.yml - 【#73】【#105】【#108】更新、纠正文档内容 - HostConfiguration,删除了CommandLine配置源,推荐只使用环境变量,同时更新青龙shell脚本内配置 +- 【#169】领取大会员福利分离为单独任务,每日执行 From 6e112fe5b60dcbe189cc274764dac86615e54611 Mon Sep 17 00:00:00 2001 From: Ray Date: Sun, 14 Aug 2022 00:21:00 +0800 Subject: [PATCH 5/8] revert --- CHANGELOG.md | 2 +- .../IReceiveVipPrivilegeAppService.cs | 15 ---- .../ReceiveVipPrivilegeAppService.cs | 87 ------------------- .../appsettings.Development.json | 2 +- .../appsettings.Production.json | 2 +- src/Ray.BiliBiliTool.Console/appsettings.json | 4 +- 6 files changed, 5 insertions(+), 107 deletions(-) delete mode 100644 src/Ray.BiliBiliTool.Application.Contracts/IReceiveVipPrivilegeAppService.cs delete mode 100644 src/Ray.BiliBiliTool.Application/ReceiveVipPrivilegeAppService.cs diff --git a/CHANGELOG.md b/CHANGELOG.md index 25e7f1d11..c144fc169 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -43,4 +43,4 @@ - 【#107】新增自动检测并关闭长时无状态issues的actions:no-response.yml - 【#73】【#105】【#108】更新、纠正文档内容 - HostConfiguration,删除了CommandLine配置源,推荐只使用环境变量,同时更新青龙shell脚本内配置 -- 【#169】领取大会员福利分离为单独任务,每日执行 +- 【#169】领取大会员福利任务更改为每日都尝试执行 diff --git a/src/Ray.BiliBiliTool.Application.Contracts/IReceiveVipPrivilegeAppService.cs b/src/Ray.BiliBiliTool.Application.Contracts/IReceiveVipPrivilegeAppService.cs deleted file mode 100644 index 628382bec..000000000 --- a/src/Ray.BiliBiliTool.Application.Contracts/IReceiveVipPrivilegeAppService.cs +++ /dev/null @@ -1,15 +0,0 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Text; - -namespace Ray.BiliBiliTool.Application.Contracts -{ - /// - /// 领取大会员B币权益 - /// - [Description("ReceiveVipPrivilege")] - public interface IReceiveVipPrivilegeAppService : IAppService - { - } -} diff --git a/src/Ray.BiliBiliTool.Application/ReceiveVipPrivilegeAppService.cs b/src/Ray.BiliBiliTool.Application/ReceiveVipPrivilegeAppService.cs deleted file mode 100644 index ca2ae6039..000000000 --- a/src/Ray.BiliBiliTool.Application/ReceiveVipPrivilegeAppService.cs +++ /dev/null @@ -1,87 +0,0 @@ -using System; -using System.Collections.Generic; -using Microsoft.Extensions.Configuration; -using Microsoft.Extensions.Logging; -using Microsoft.Extensions.Options; -using Ray.BiliBiliTool.Agent.BiliBiliAgent.Dtos; -using Ray.BiliBiliTool.Application.Attributes; -using Ray.BiliBiliTool.Application.Contracts; -using Ray.BiliBiliTool.Config; -using Ray.BiliBiliTool.DomainService.Interfaces; - -namespace Ray.BiliBiliTool.Application -{ - public class ReceiveVipPrivilegeAppService : AppService, IReceiveVipPrivilegeAppService - { - private readonly ILogger _logger; - private readonly IConfiguration _configuration; - private readonly IAccountDomainService _accountDomainService; - private readonly IVipPrivilegeDomainService _vipPrivilegeDomainService; - private readonly IAccountDomainService _loginDomainService; - private readonly Dictionary _expDic; - - public ReceiveVipPrivilegeAppService( - IConfiguration configuration, - ILogger logger, - IAccountDomainService accountDomainService, - IVipPrivilegeDomainService vipPrivilegeDomainService, - IAccountDomainService loginDomainService, - IOptionsMonitor> dicOptions - ) - { - _configuration = configuration; - _logger = logger; - _accountDomainService = accountDomainService; - _vipPrivilegeDomainService = vipPrivilegeDomainService; - _loginDomainService = loginDomainService; - _expDic = dicOptions.Get(Constants.OptionsNames.ExpDictionaryName); - - } - - [TaskInterceptor("领取大会员福利")] - public override void DoTask() - { - UserInfo userInfo = Login(); - - ReceiveVipPrivilege(ref userInfo); - } - - /// - /// 登录 - /// - /// - [TaskInterceptor("登录")] - private UserInfo Login() - { - UserInfo userInfo = _loginDomainService.LoginByCookie(); - if (userInfo == null) throw new Exception("登录失败,请检查Cookie");//终止流程 - - _expDic.TryGetValue("每日登录", out int exp); - _logger.LogInformation("登录成功,经验+{exp} √", exp); - - return userInfo; - } - - /// - /// 每月领取大会员福利 - /// - [TaskInterceptor("领取", rethrowWhenException: false)] - private void ReceiveVipPrivilege(ref UserInfo userInfo) - { - var suc = _vipPrivilegeDomainService.ReceiveVipPrivilege(userInfo); - - //如果领取成功,需要刷新账户信息(比如B币余额) - if (suc) - { - try - { - userInfo = _loginDomainService.LoginByCookie(); - } - catch (Exception ex) - { - _logger.LogError("领取福利成功,但之后刷新用户信息时异常,信息:{msg}", ex.Message); - } - } - } - } -} diff --git a/src/Ray.BiliBiliTool.Console/appsettings.Development.json b/src/Ray.BiliBiliTool.Console/appsettings.Development.json index 92618dce9..f33b141c8 100644 --- a/src/Ray.BiliBiliTool.Console/appsettings.Development.json +++ b/src/Ray.BiliBiliTool.Console/appsettings.Development.json @@ -1,7 +1,7 @@ { "DailyTaskConfig": { "SupportUpIds": "", - "AutoChargeUpId": "341688380" + "AutoChargeUpId": "220893216" }, "Security": { "IsSkipDailyTask": false, diff --git a/src/Ray.BiliBiliTool.Console/appsettings.Production.json b/src/Ray.BiliBiliTool.Console/appsettings.Production.json index e335815cb..44ab861f1 100644 --- a/src/Ray.BiliBiliTool.Console/appsettings.Production.json +++ b/src/Ray.BiliBiliTool.Console/appsettings.Production.json @@ -1,7 +1,7 @@ { "DailyTaskConfig": { "SupportUpIds": "", - "AutoChargeUpId": "341688380" + "AutoChargeUpId": "220893216" }, //用于UT验证 "IsPrd": true diff --git a/src/Ray.BiliBiliTool.Console/appsettings.json b/src/Ray.BiliBiliTool.Console/appsettings.json index 28a0e5d76..97551bd69 100644 --- a/src/Ray.BiliBiliTool.Console/appsettings.json +++ b/src/Ray.BiliBiliTool.Console/appsettings.json @@ -14,7 +14,7 @@ "SelectLike": true, //投币时是否同时点赞[false,true] "SupportUpIds": "", //优先选择支持的up主Id集合,多个以英文逗号分隔,如:"123,456"。配置后会优先从指定的up主下挑选视频进行观看、分享和投币,不配置或配置为-1则表示没有特别支持的up,会从关注和排行耪中随机获取支持视频 "DayOfAutoCharge": -1, //每月几号自动充电[-1,31],-1表示不指定,默认月底最后一天;0表示不充电 - "AutoChargeUpId": "341688380", //指定支持的UP主Id,-1表示自己 + "AutoChargeUpId": "-1", //指定支持的UP主Id,-1表示自己 "ChargeComment": "", //充电后留言 "DayOfReceiveVipPrivilege": 1, //每月几号自动领取会员权益的[-1,31],-1表示不指定,默认每月1号;0表示不自动领取 "DayOfExchangeSilver2Coin": 0, //每月几号执行银瓜子兑换硬币[-1,31],-1表示不指定,默认每月最后一天;-2表示每天;0表示不进行兑换 @@ -41,7 +41,7 @@ //安全相关配置 "Security": { "IsSkipDailyTask": false, //是否跳过执行任务,用于特殊情况下,通过配置灵活的开启和关闭任务 - "RandomSleepMaxMin": 20, //随机睡眠的最大时长(单位为分钟),用于使每天运行时间在范围内相对随机,值域[0,+];配置为0表示不进行休眠 + "RandomSleepMaxMin": 10, //随机睡眠的最大时长(单位为分钟),用于使每天运行时间在范围内相对随机,值域[0,+];配置为0表示不进行休眠 "IntervalSecondsBetweenRequestApi": 20, //两次调用api之间的间隔[0,+](单位为秒)。因为有人担心在几秒内连续调用api会被b站安全机制发现,所以为不放心的朋友添加了间隔秒数配置,两次连续调用Api之间会大于该秒数 "IntervalMethodTypes": "GET,POST", //间隔秒数所针对的HttpMethod,多个用英文逗号隔开,当前有GET和POST两种,可配置如“GET,POST” "UserAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.74 Safari/537.36 Edg/99.0.1150.55", //请求B站接口时头部传递的User-Agent From 99d848638f306b51a8c4c30fb6d904ca94a485b4 Mon Sep 17 00:00:00 2001 From: Ray Date: Mon, 15 Aug 2022 00:14:13 +0800 Subject: [PATCH 6/8] feat: compatible with case issues when pulling repositories in qinglong --- CHANGELOG.md | 2 + qinglong/DefaultTasks/bili_dev_task_daily.sh | 2 +- .../DefaultTasks/bili_dev_task_liveLottery.sh | 4 +- qinglong/DefaultTasks/bili_dev_task_test.sh | 2 +- .../bili_dev_task_unfollowBatched.sh | 2 +- qinglong/DefaultTasks/bili_task_daily.sh | 4 +- .../DefaultTasks/bili_task_liveLottery.sh | 2 +- qinglong/DefaultTasks/bili_task_test.sh | 2 +- .../DefaultTasks/bili_task_unfollowBatched.sh | 2 +- qinglong/README.md | 49 ++++++++++++++++--- 10 files changed, 55 insertions(+), 16 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c144fc169..5859b9db0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -44,3 +44,5 @@ - 【#73】【#105】【#108】更新、纠正文档内容 - HostConfiguration,删除了CommandLine配置源,推荐只使用环境变量,同时更新青龙shell脚本内配置 - 【#169】领取大会员福利任务更改为每日都尝试执行 +- 青龙拉库兼容大小写问题 +- 【#197】合并PR,新增了阅读漫画功能到每日任务中(@ChanceLuo) diff --git a/qinglong/DefaultTasks/bili_dev_task_daily.sh b/qinglong/DefaultTasks/bili_dev_task_daily.sh index 232119cf0..53c53f0da 100644 --- a/qinglong/DefaultTasks/bili_dev_task_daily.sh +++ b/qinglong/DefaultTasks/bili_dev_task_daily.sh @@ -8,7 +8,7 @@ dir_shell=$QL_DIR/shell bili_repo="raywangqvq_bilibilitoolpro_develop" echo "repo目录: $dir_repo" -bili_repo_dir="$(find $dir_repo -type d -name $bili_repo | head -1)" +bili_repo_dir="$(find $dir_repo -type d -iname $bili_repo | head -1)" echo -e "bili仓库目录: $bili_repo_dir\n" cd $bili_repo_dir diff --git a/qinglong/DefaultTasks/bili_dev_task_liveLottery.sh b/qinglong/DefaultTasks/bili_dev_task_liveLottery.sh index 4472365f6..0dbf48d52 100644 --- a/qinglong/DefaultTasks/bili_dev_task_liveLottery.sh +++ b/qinglong/DefaultTasks/bili_dev_task_liveLottery.sh @@ -8,10 +8,10 @@ dir_shell=$QL_DIR/shell bili_repo="raywangqvq_bilibilitoolpro_develop" echo "repo目录: $dir_repo" -bili_repo_dir="$(find $dir_repo -type d -name $bili_repo | head -1)" +bili_repo_dir="$(find $dir_repo -type d -iname $bili_repo | head -1)" echo -e "bili仓库目录: $bili_repo_dir\n" cd $bili_repo_dir export ENVIRONMENT=Production && \ export Ray_RunTasks=LiveLottery && \ -dotnet run --project ./src/Ray.BiliBiliTool.Console \ No newline at end of file +dotnet run --project ./src/Ray.BiliBiliTool.Console diff --git a/qinglong/DefaultTasks/bili_dev_task_test.sh b/qinglong/DefaultTasks/bili_dev_task_test.sh index 4b37e835a..e79a07b7e 100644 --- a/qinglong/DefaultTasks/bili_dev_task_test.sh +++ b/qinglong/DefaultTasks/bili_dev_task_test.sh @@ -8,7 +8,7 @@ dir_shell=$QL_DIR/shell bili_repo="raywangqvq_bilibilitoolpro_develop" echo "repo目录: $dir_repo" -bili_repo_dir="$(find $dir_repo -type d -name $bili_repo | head -1)" +bili_repo_dir="$(find $dir_repo -type d -iname $bili_repo | head -1)" echo -e "bili仓库目录: $bili_repo_dir\n" cd $bili_repo_dir diff --git a/qinglong/DefaultTasks/bili_dev_task_unfollowBatched.sh b/qinglong/DefaultTasks/bili_dev_task_unfollowBatched.sh index 53c40ed67..8a339da23 100644 --- a/qinglong/DefaultTasks/bili_dev_task_unfollowBatched.sh +++ b/qinglong/DefaultTasks/bili_dev_task_unfollowBatched.sh @@ -8,7 +8,7 @@ dir_shell=$QL_DIR/shell bili_repo="raywangqvq_bilibilitoolpro_develop" echo "repo目录: $dir_repo" -bili_repo_dir="$(find $dir_repo -type d -name $bili_repo | head -1)" +bili_repo_dir="$(find $dir_repo -type d -iname $bili_repo | head -1)" echo -e "bili仓库目录: $bili_repo_dir\n" cd $bili_repo_dir diff --git a/qinglong/DefaultTasks/bili_task_daily.sh b/qinglong/DefaultTasks/bili_task_daily.sh index 4ee2c99ab..a03aad201 100644 --- a/qinglong/DefaultTasks/bili_task_daily.sh +++ b/qinglong/DefaultTasks/bili_task_daily.sh @@ -8,10 +8,10 @@ dir_shell=$QL_DIR/shell bili_repo="raywangqvq_bilibilitoolpro" echo "repo目录: $dir_repo" -bili_repo_dir="$(find $dir_repo -type d -name $bili_repo | head -1)" +bili_repo_dir="$(find $dir_repo -type d -iname $bili_repo | head -1)" echo -e "bili仓库目录: $bili_repo_dir\n" cd $bili_repo_dir export ENVIRONMENT=Production && \ export Ray_RunTasks=Daily && \ -dotnet run --project ./src/Ray.BiliBiliTool.Console \ No newline at end of file +dotnet run --project ./src/Ray.BiliBiliTool.Console diff --git a/qinglong/DefaultTasks/bili_task_liveLottery.sh b/qinglong/DefaultTasks/bili_task_liveLottery.sh index e1942a38d..6793ac3ae 100644 --- a/qinglong/DefaultTasks/bili_task_liveLottery.sh +++ b/qinglong/DefaultTasks/bili_task_liveLottery.sh @@ -8,7 +8,7 @@ dir_shell=$QL_DIR/shell bili_repo="raywangqvq_bilibilitoolpro" echo "repo目录: $dir_repo" -bili_repo_dir="$(find $dir_repo -type d -name $bili_repo | head -1)" +bili_repo_dir="$(find $dir_repo -type d -iname $bili_repo | head -1)" echo -e "bili仓库目录: $bili_repo_dir\n" cd $bili_repo_dir diff --git a/qinglong/DefaultTasks/bili_task_test.sh b/qinglong/DefaultTasks/bili_task_test.sh index bd6fa5b4e..f48c7d41f 100644 --- a/qinglong/DefaultTasks/bili_task_test.sh +++ b/qinglong/DefaultTasks/bili_task_test.sh @@ -8,7 +8,7 @@ dir_shell=$QL_DIR/shell bili_repo="raywangqvq_bilibilitoolpro" echo "repo目录: $dir_repo" -bili_repo_dir="$(find $dir_repo -type d -name $bili_repo | head -1)" +bili_repo_dir="$(find $dir_repo -type d -iname $bili_repo | head -1)" echo -e "bili仓库目录: $bili_repo_dir\n" cd $bili_repo_dir diff --git a/qinglong/DefaultTasks/bili_task_unfollowBatched.sh b/qinglong/DefaultTasks/bili_task_unfollowBatched.sh index 96d53c6f8..73b6c3135 100644 --- a/qinglong/DefaultTasks/bili_task_unfollowBatched.sh +++ b/qinglong/DefaultTasks/bili_task_unfollowBatched.sh @@ -8,7 +8,7 @@ dir_shell=$QL_DIR/shell bili_repo="raywangqvq_bilibilitoolpro" echo "repo目录: $dir_repo" -bili_repo_dir="$(find $dir_repo -type d -name $bili_repo | head -1)" +bili_repo_dir="$(find $dir_repo -type d -iname $bili_repo | head -1)" echo -e "bili仓库目录: $bili_repo_dir\n" cd $bili_repo_dir diff --git a/qinglong/README.md b/qinglong/README.md index 4d36e31bb..82a8a7d80 100644 --- a/qinglong/README.md +++ b/qinglong/README.md @@ -12,7 +12,11 @@ - [1.3. 登录青龙面板并修改配置](#13-登录青龙面板并修改配置) - [1.4. 添加bili配置](#14-添加bili配置) - [1.5. 在青龙面板中添加拉库定时任务](#15-在青龙面板中添加拉库定时任务) + - [1.5.1 订阅管理](#151-订阅管理) + - [1.5.2 定时任务拉库](#152-定时任务拉库) - [2. 先行版](#2-先行版) + - [2.1 订阅管理](#21-订阅管理) + - [2.2 定时任务拉库](#22-定时任务拉库) - [3. GitHub加速](#3-github加速) @@ -44,21 +48,45 @@ sh -c "$(wget https://ghproxy.com/https://raw.githubusercontent.com/RayWangQvQ/B 青龙面板,`环境变量`页,添加环境变量: ``` -名称:Ray_BiliBiliCookies__0 +名称:Ray_BiliBiliCookies__1 值:abc ``` -`abc`为你抓取到的真实cookie字符串。 +``` +名称:Ray_BiliBiliCookies__2 +值:defg +``` + +`abc`、`defg`为你抓取到的真实cookie字符串。 ![qinglong-env.png](../docs/imgs/qinglong-env.png) ### 1.5. 在青龙面板中添加拉库定时任务 + +两种方式: +#### 1.5.1 订阅管理 + +``` +名称:Bilibili +类型:公开仓库 +链接:https://github.com/RayWangQvQ/BiliBiliToolPro.git +定时类型:crontab +定时规则:2 2 28 * * +白名单:bili_task_.+\.sh +文件后缀:sh +``` + +没提到的不要动。 + +保存后,点击运行按钮,运行拉库。 + +#### 1.5.2 定时任务拉库 青龙面板,`定时任务`页,右上角`添加任务`,填入以下信息: ``` 名称:拉取Bili库 -命令:ql repo https://github.com/raywangqvq/bilibilitoolpro.git "bili_task_" +命令:ql repo https://github.com/RayWangQvQ/BiliBiliToolPro.git "bili_task_" 定时规则:2 2 28 * * ``` @@ -71,11 +99,20 @@ sh -c "$(wget https://ghproxy.com/https://raw.githubusercontent.com/RayWangQvQ/B ![qinglong-tasks.png](../docs/imgs/qinglong-tasks.png) ## 2. 先行版 -修改拉库命令为`ql repo https://github.com/raywangqvq/bilibilitoolpro.git "bili_dev_task_" "" "" "develop"`可改为拉取develop分支的代码。 -develop分支的代码会超前于默认的main分支,包含当前正在开发的新功能。 +青龙拉库时可以指定分支,develop分支的代码会超前于默认的main分支,包含当前正在开发的新功能。 想提前体验新功能的朋友可以尝试切换先行版,但同时也意味着稳定性会相应降低(其实是相当于在帮我内测测试bug了~🤨)。 +方式有两种: + +### 2.1 订阅管理 + +分支:develop + +### 2.2 定时任务拉库 + +修改拉库命令为`ql repo https://github.com/RayWangQvQ/BiliBiliToolPro.git "bili_dev_task_" "" "" "develop"` + ## 3. GitHub加速 -拉库时,如果服务器在国内,访问GitHub速度慢,可以在仓库地址前加上 `https://ghproxy.com/` 进行加速, 如:`ql repo https://ghproxy.com/https://github.com/raywangqvq/bilibilitoolpro.git "bili_task_"` +拉库时,如果服务器在国内,访问GitHub速度慢,可以在仓库地址前加上 `https://ghproxy.com/` 进行加速, 如:`ql repo https://ghproxy.com/https://github.com/RayWangQvQ/BiliBiliToolPro.git "bili_task_"` From 1fc22c8b00819ef1ee6ac8ebf3f543617b0d242e Mon Sep 17 00:00:00 2001 From: Ray Date: Mon, 15 Aug 2022 00:25:11 +0800 Subject: [PATCH 7/8] chore: update README.md --- qinglong/README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/qinglong/README.md b/qinglong/README.md index 82a8a7d80..ebff85949 100644 --- a/qinglong/README.md +++ b/qinglong/README.md @@ -108,7 +108,12 @@ sh -c "$(wget https://ghproxy.com/https://raw.githubusercontent.com/RayWangQvQ/B ### 2.1 订阅管理 +``` 分支:develop +白名单:bili_dev_task_.+\.sh +``` + +其他同上。 ### 2.2 定时任务拉库 From b5f310bc23a0e77d07ea544925943d1be4e586da Mon Sep 17 00:00:00 2001 From: Ray Date: Mon, 15 Aug 2022 00:32:33 +0800 Subject: [PATCH 8/8] chore: remove useless files --- .../bili_dev_task_receiveVipPrivilege.sh | 17 ----------------- .../bili_task_receiveVipPrivilege.sh | 17 ----------------- 2 files changed, 34 deletions(-) delete mode 100644 qinglong/DefaultTasks/bili_dev_task_receiveVipPrivilege.sh delete mode 100644 qinglong/DefaultTasks/bili_task_receiveVipPrivilege.sh diff --git a/qinglong/DefaultTasks/bili_dev_task_receiveVipPrivilege.sh b/qinglong/DefaultTasks/bili_dev_task_receiveVipPrivilege.sh deleted file mode 100644 index 82c214ebc..000000000 --- a/qinglong/DefaultTasks/bili_dev_task_receiveVipPrivilege.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/usr/bin/env bash -# new Env("bili领取大会员福利[dev先行版]") -# cron 10 0 * * * bili_dev_task_receiveVipPrivilege.sh - -dir_shell=$QL_DIR/shell -. $dir_shell/share.sh - -bili_repo="raywangqvq_bilibilitoolpro_develop" - -echo "repo目录: $dir_repo" -bili_repo_dir="$(find $dir_repo -type d -name $bili_repo | head -1)" -echo -e "bili仓库目录: $bili_repo_dir\n" - -cd $bili_repo_dir -export ENVIRONMENT=Production && \ -export Ray_RunTasks=ReceiveVipPrivilege && \ -dotnet run --project ./src/Ray.BiliBiliTool.Console diff --git a/qinglong/DefaultTasks/bili_task_receiveVipPrivilege.sh b/qinglong/DefaultTasks/bili_task_receiveVipPrivilege.sh deleted file mode 100644 index f39dc74f7..000000000 --- a/qinglong/DefaultTasks/bili_task_receiveVipPrivilege.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/usr/bin/env bash -# new Env("bili领取大会员福利") -# cron 20 0 * * * bili_task_receiveVipPrivilege.sh - -dir_shell=$QL_DIR/shell -. $dir_shell/share.sh - -bili_repo="raywangqvq_bilibilitoolpro" - -echo "repo目录: $dir_repo" -bili_repo_dir="$(find $dir_repo -type d -name $bili_repo | head -1)" -echo -e "bili仓库目录: $bili_repo_dir\n" - -cd $bili_repo_dir -export ENVIRONMENT=Production && \ -export Ray_RunTasks=ReceiveVipPrivilege && \ -dotnet run --project ./src/Ray.BiliBiliTool.Console