Princess-connection-farm:一个国服公主连结R的自动化脚本(公主连结日常脚本)

包子5个月前安卓1187

获取文章的最新版本,请点击末尾的“阅读原文” 或“Read more”公主连结R,是由 Cygames 公司开发的动画抽卡角色扮演类游戏,简体中文官服由 Bilibili 于2020年4月代理发行这个游戏呢,如果是跟着开服的进度慢慢发展的话,还是基本上不用特别肝或者氪金的;但是在现在这个时间点上再入坑,进度属实有点难赶,需要很长时间了。

Princess-connection-farm:一个国服公主连结R的自动化脚本(公主连结日常脚本)
(图片来源网络,侵删)

这个脚本设立的初衷,就是:把个人时间花在其他有用的地方,让脚本帮你养老婆养女儿按照 Github 里的教程是可以部署的,但是其教程撰写得过于繁琐、冗长,对新手及其不友好的,发 issue 基本没什么用,除非用英语。

所以,Never. 尽量以一个小白的角度来叙述这个脚本的安装过程需要:Windows 10 或 11,可以流畅运行安卓模拟器的机器本篇文章环境基于 Windows 10 下,系统中未安装任何版本的 python。

Princess-connection-farm:一个国服公主连结R的自动化脚本(公主连结日常脚本)
(图片来源网络,侵删)

系统中未安装任何版本的 python在该情况下,一切都变得简单起来~首先,将项目下载到本地,然后解压如果不能正常访问 github,点这个链接下载这里我们解压到 C 盘用户中的下载目录里的“PCRFarm”,也可以解压到其他目录,这个项目安装完之后差不多一两个G。

打开解压后的文件夹,点一下上方的地址栏,被选中的路径就是该项目在我们电脑中的绝对路径了:

Princess-connection-farm:一个国服公主连结R的自动化脚本(公主连结日常脚本)
(图片来源网络,侵删)

接下来就要安装 python 了,这里项目组给出了两个方法,一是安装项目组给出的 python 虚拟环境(venv),二是走 pip install 来安装项目依赖为了简单,我们走安装虚拟环境虚拟环境中,项目组给出了两个包:。

我们选择“依赖单体包”,下载链接:https://www.123pan.com/s/dDG9-Mc3WA  提取码:mK4h。下载后,打开压缩包,双击进入 .venv 目录:

请一定确保进入 .venv 目录(如上图所示),然后单击最上面的“..”,解压至项目的主目录里的 .venv 目录下(例如,我的就是 C:\Users\Never\Downloads\PCRFarm\.venv):

解压说明:先找到项目的主目录(例如,PCRFarm),然后单击主目录,再点“新建文件夹”,将“新建文件夹”重命名为“.venv”,进行解压。解压完成后,目录结构应是这样的:

请务必要确保 .venv 目录中仅为上图所示的那些文件和文件夹,而不是仅为一个“venv”或".venv"的文件夹,而且,确保 .venv 目录与 “main_new.py”文件两者处于一个文件夹中:

接下来,安装安卓模拟器项目组叙述说:“雷电4,蓝叠,雷神,夜神,逍遥模拟器均可以使用一般来说,只要支持adb连接的模拟器都可以使用(建议非雷电模拟器,打开自动搜寻模拟器),甚至可以混合搭配使用(adb端口不冲突的情况下)。

” 这里,我们使用蓝叠国际版(Nougat, 64位),可以点这儿下载。安装完成后,进入模拟器的设置界面:

在“显示”栏目,需要将显示设置调整为“竖屏”,分辨率为“540×960”,像素密度为“240 DPI(中)”,然后点击保存,重启模拟器:

重启完成后,继续打开设置,点击“高级”栏目,将“Android 调试(ADB)”打开,然后点击保存,重启模拟器:

Bilibili服的公主连结可以通过 Taptap 下载,Taptap官网下载界面点这儿,下载apk后安装在模拟器上,然后打开taptap搜公主连结下载即可第一次进游戏需要下载约12GB的数据接下来就要对脚本下功夫了,打开主目录下的 .venv 目录,打开“python-3.8.10-amd64.exe”安装 python,请注意,一定要勾选“Add Python 3.8 to PATH”!!。

安装完成后,重启一下电脑,然后回到 .venv 目录,按住 Shift,同时在空白区域右键单击,在右键菜单中选择“在此处打开 PowerShell 窗口”或“在此处打开 Windows 终端”。

请确保 PowerShell 是在 .venv 目录下运行的:

输入以下命令来安装“poetry”:pip install poetry

如果有如上图所示的回显即为安装完成,接下来,输入以下命令来验证 poetry 是否成功安装:poetry -V

若有回显显示 poetry 的版本号,如上图,则为安装成功返回到项目主目录(PCRFarm),在此打开 PowerShell 或 Windows 终端窗口,输入以下命令来更改 poetry 的运行环境:。

poetry env use "python 安装的路径"python3.8 默认安装在 C:\Users\“你的用户名”\AppData\Local\Programs\Python\Python38 下,以我自己为例,该命令应为:

poetry env use C:\Users\Never\AppData\Local\Programs\Python\Python38\python.exe如果报错,如下图所示:

打开 .venv 目录中的“pyvenv.cfg”(可以用记事本来编辑),将C:\Users\KLest\AppData\Local\Programs\Python\Python38 替换成 C:\Users\“你的用户名”\AppData\Local\Programs\Python\Python38。

以我的为例,修改完应为下图所示:

保存退出,接着在项目主目录(PCRFarm)下运行终端窗口,输入以下命令来启动脚本:poetryrunpython .\main_new.py等待检测完毕:

此时打开安卓模拟器,然后在终端中输入以下命令来初始化脚本:init

完成后,模拟器桌面上会出现“ATX”应用,打开应用,检查工作是否正常:

接下来就是最繁琐的阶段了,配置账号、分组、创建任务与分配任务项目组在这几个部分中的说明过于冗余配置账号该脚本识别用户名和密码的格式为“用户名1 密码1”(用户名+一个空格+密码)我们需要在项目主目录(与main_new.py 同级)中创建“。

zhanghao.txt”,文本文档中一行一个用户名和密码:user1passcode1user2passcode2...userxpasscodex项目组推荐将大号放在第一的位置回到终端,输入 edit。

进入项目编辑菜单,再输入以下命令导入账号密码:user-c-filezhanghao.txt输入 user? 可以获取有关 user 的更多示例用法:Edit>user?帮助: useruser-l 列举全部用户列表

userAccount 显示某用户的所有信息user-c Account Password 创建一个新用户Account: 用户名 Password: 密码对已经存在的用户将覆盖原本的信息user。

-c -file Filename 从指定文件Filename创建用户该文件每一行要求分隔符(空格或Tab)隔开的两个元素Account Password对已经存在的用户将覆盖原本的信息user-d Account 删除指定Account的账户。

user-d -file Filename 从指定文件Filename删除用户该文件每一行为一个Account,表示要删除的用户user-d -all 删除全部用户userAccount [-p Password] 更改某一账户的密码

分组一般地,我们期望小号1~15打本,攒装备,小号16~30给公会里的成员点赞、捐玛娜等或者全部小号都打本等,这个时候就涉及到分组了,如果一次只对一个小号下放任务,效率会很低,分组则可以让该组里的账号全部做同样的计划任务。

在项目主目录(与main_new.py 同级)中,创建新文件夹,命名为“groups”,在里面创建个文本文档,命名为“tuitu.json”,文件名可自定义(最好用英文),但是后缀要为 .json我们定义这个组别里面的账号均要推图和做一些日常任务。

打开这个文件(可以用记事本打开),在里面输入要推图和做一些日常任务的账号的用户名,每行一个,例如:user1user2user3...user15小号16~30给公会里的成员点赞、捐玛娜,我们再新建一个文本文档,命名为“

gonghui.json”,在里面输入小号16~30的用户名,每行一个,例如:user16user17user18...user30假如全部小号都做一个任务,则可以将全部小号的用户名都放在一个 .json

文档里,以此类推。此时,我们在终端中输入 group -l,即可向脚本中加载全部组别:

输入 group? 可以获取有关 group 的更多示例用法:Edit> group? 帮助:groupgroup -l 列举全部组列表group GroupName [-g] 显示某个组的全部成员,输入-g后还会显示其成员全部所在组

group的创建:非常简单,不写方法了 Step 1. 前往./groups 文件夹 Step 2. 创建一个.json文件,文件名为组名 Step 3. 在该json文件内每行一个用户名,表示该组的成员 <- 由于某些原因,它其实以txt结尾最好,毕竟一行一个明显不是json吧……。

[新增方法] 以下方法中如果组不存在将被自动创建groupadd (GroupName) (UserName1) [(UserNameN) ...] 将UserName或一系列空格隔开的UserNames添加到组GroupName

groupadd (GroupName) *TargetGroup 将TargetGroup中的用户添加到组GroupName,注:*TargetGroup表示在名称前加*号,如*xiaohao。

groupdel (GroupName) (UserName1) [(UserNameN) ...] 从组GroupName中移除一个或多个空格隔开的UserNamegroupdel (GroupName

) * 删除GroupName中全部组成员groupdel (GroupName) *TargetGroup 删除GroupName中全部TargetGroup中的组成员groupmove (GroupName1

) (GroupName2) (UserName1) [(UserNameN) ...] 将一个或多个用户从组GroupName1移动到GroupName2groupmove (GroupName1) (

GroupName2) * 将GroupName1中组成员全部移动至GroupName2groupmove (GroupName1) (GroupName2) *TargetGroup 将GroupName1中TargetGroup中的组成员全部移动至GroupName2

groupuser (UserName) 显示某一个用户所在的全部组#这个时候也就是最矛盾的地方,项目组在 github 的使用方法中要用 .json 格式来配置组别,而在终端中又说 .txt 最好而且还重复说明 json 一行一行很奇怪。

不懂项目组的意思,想彰显自己学问渊博?

创建任务最最最最麻烦的地方来了首先,我们以小号1~15(推图,刷装备)的角度来看,上号之后的流程为:账号设置初始化—抽取免费扭蛋和免费十连(如果当期有提供)—>领取礼物—>领取每日任务奖励—>刷主线普通/推图—>刷主线困难/推图—>领取每日任务奖励。

在这个游戏里面,每个账号都有自己的设定档,所以我个人推荐每个账号的第一个任务就是先初始化设置,以防止脚本卡顿脚本的任务进行顺序与我们添加的顺序一致,所以我们要按序添加,也可以后期输入命令更改排位在终端中输入 。

task -c tuitu,创建一个 tuitu 任务,然后输入 task -e tuitu,进入 tuitu 任务的编辑界面:

可以输入 help 来获取任务设定帮助:Task[tuitu]> helpadd (Type) 根据提示增加一个缩写为Type的指令del (ID) 删除指定ID的任务move (ID1) (ID2) 将原来编号为ID1的任务移动至ID2

detail [(ID)] 查看指定ID的详细参数,若ID不指定,查看全部任务的详细参数moredetail [(ID)] 查看指定ID的更详细参数,若ID不指定,查看全部任务的更详细参数edit (ID) [-s] 修改某一个任务 设置了-s后,不会显示具体数值。

list -[前缀] 显示以[前缀]开头的全部任务list -h 显示行会指令 (和活动指令,因为hd也是h开头的……)list -hd 显示活动指令list -d 显示地下城指令list -j 显示竞技场指令

list -r 显示日常指令list -t 显示工具指令list -s 显示刷图指令list -f 显示好友指令enable (ID) 启用编号为ID的任务disable (ID) 禁用编号为ID的任务

flag (flagname) (ID) 当flagname被激活时,禁用编号为ID的任务(详见switch)show 显示现在的任务情况及其ID帮助:help 退出:exit 保存:save 重载:load 重写:clear

== 一定记住:先保存,再退出!!==#此时又来一个矛盾的地方,行会里面也有活动指令,而下面又单出个活动指令所有任务指令编号附在本教程最后所以对于小号1~15,我们首先就是要设置初始化,对应的任务编号为 。

t10,即要在终端中输入 add t10 来增加任务接下来是扭蛋和抽奖,对应任务编号为 r2 与 r3,依序、单个增加,在终端中输入 add r2,执行,再输入 add r3,执行,以此类推在添加一些任务时,脚本可能会让我们选择某些选项,一般都能读懂,但是实在不能理解的,可以参阅项目组对于 schedule 的说明,点这儿查看。

添加任务完毕后,输入 save 保存,再输入 exit 退出任务编辑界面。也可以通过手动编辑 tasks 目录下的 xxx.json 来手动编辑/调序任务:

创建完 tuitu 任务后,可以给小号16~30添加对应的任务,步骤和上面相同,只需要更一下任务名称即可~分配任务加油!就快到最后了!!在这里我们需要定义哪个组干哪些活儿,哪个组要干的活儿的优先权最高等等。

这里,脚本使用了 batch 命令,每个 batch 仅对应一组 tasks以 tuitu 的任务为例,在终端中输入 batch -c tuitu,创建一个对小号1~15的任务批次,然后输入 batch -e tuitu。

,进入 tuitu 批次的编辑界面。

在此界面,可以输入 help 获取帮助:Batch[tuitu]> helpadd account task [priority=0] 增加一个优先级为priority的account做task的任务

add -g group task [priority=0] 增加一个优先级为priorityd的组group做task的任务add -file filename 从文件中添加一组任务 该文件由若干行组成,每一行应填入四个空格隔开的元素:

若添加单独任务,则第一列写字母A,后面三个空依次填入account,task,priority 若添加组任务,则第一列写字母G,后面三个空依次填入group,task,priorityrandom enable/disable (ID) 随机编号为ID的batch的优先级(优先级将±

0.5浮动)show 显示现在的任务情况帮助:help 退出:exit 保存:save 重载:load 重写:clear什么是batch: what== 一定记住:先保存,再退出!!==然后我们把之前创建的 tuitu 任务和 小号1~15 所对应的 tuitu 组绑定在一个批次中:

add -g tuitu tuitu上面一条命令,前面的“tuitu”代表是分组,后面的“tuitu”代表是任务。然后输入 show 查看是否绑定成功:

有上图类似的回显则代表成功,我这里的组的名称是 richang,大家根据自己的进行修改即可然后输入 save 保存,exit 退出也可以通过手动编辑 batches 目录下的 xxx.json 来手动编辑/调序任务:。

有多 batches 的小伙伴,重复上述步骤新建修改即可执行任务时间到最后了!!我们可能需要对某组执行的任务有时间限制,例如早上执行公会点赞,捐玛娜等的一组,晚上再执行推图,刷装备等的一组这时候就需要用到 。

schedule 了以 tuitu 一组为例让其晚上进行,在终端中输入 schedule -c tuitu,创建 tuitu 的计划,然后输入 schedule -e tuitu,进入计划的编辑界面:

在此界面,输入 help 可以获取帮助:Schedule[tuitu]> helpadd asap 按照提示添加一个立即执行的任务add wait 按照提示增加一个等待执行的任务

add config 按照提示增加一个schedule配置enable name 激活名称为name的子计划disable name 禁用名称为name的子计划

flag flagname name 当flag设置为真时,禁用名称为name的子计划(详见switch)show 显示现在的计划情况帮助:help 退出:exit 保存:save 重载:load 重写:clear

什么是batch: what== 一定记住:先保存,再退出!!==#这儿又有个问题,在 schedule 中输入 help,里面有“什么是 batch”...输入 add wait 进入配置界面,这里以批次 batch 中只含有单一任务 tuitu、在19~24时、循环运行为例:

Schedule[tuitu]>add wait--批配置名称 --请为这个子计划起个名字:tuitu#计划名称--批配置模式 --0: 只包含一个批配置(适用于大多数情况)1: 多个批配置依次执行(适用于40to1等)

>0#一般选0--批配置文件 --请输入批配置文件:tuitu#与在 batch 中设置的名称一致--条件设置 --0退出设置1条件:指定时间段2条件:可以捐赠>1#设置指定时间段进行该任务请输入起始小时:(0~23的整数)19

请输入结束小时:(0~23的整数)0--条件设置 --0退出设置1条件:指定时间段2条件:可以捐赠>0#设置完毕后输入0--记录设置 --0正常运行(默认)1持久运行:不受到first或restart的影响,除非使用restart schedule name单独指定。

2循环运行:适用于装备捐赠等条件,运行完毕后自动执行restart>2#设置运行条件,根据个人设置的任务来选择大家可以依据自己创建的任务的条件来自定义该项完成后,输入 save 保存,exit 退出也可以通过手动编辑

schedules 目录下的 xxx.json 来手动编辑/调序任务:

有多 schedules 的小伙伴,重复上述步骤新建修改即可可以将许多 batches 与同一个 schedule 绑定(创建多个子计划),以达到在终端上绑定一个计划就全部运行的目的绑定 schedule。

完成上述步骤,在启动脚本前我们还需要一步:绑定 schedule 以让脚本了解要干什么输入以下命令来绑定 schedule:bind"schedule 名称"以上面创建的 tuitu schedule 为例,该条命令应为:。

bind tuitu

然后,我们就可以在终端上输入 help 来查看有关运行命令:Main[tuitu]>help脚本控制帮助()内的为需要填写的参数,[]内的参数可以不填写(使用默认参数)bind(schedule) 绑定一个计划

first清除计划 tuitu 的运行记录并重新执行continue继续执行计划 tuitustate显示计划 tuitu 的运行状态clear(name) 清除计划 tuitu 中名为Name的子计划的错误,name设置为-all时,全部清除。

restart(name) 清除计划 tuitu 中名为Name的子计划的运行记录,name设置为-all时,全部清除unbind解除与计划 tuitu 的绑定state-tuitu 显示所有用户推图的状态。

运行脚本前,请确保安卓模拟器已开启,在桌面上。第一次运行的话,输入 first 开始:

如果中间出错导致脚本停止运行,重新打开终端,输入 poetry run python .\main_new.py 重新打开脚本,输入 continue 来从上次出错的地方继续运行脚本快速启动可以输入以下命令重新开始或继续运行某个schedule:。

poetry run python .\main_new.py first(或continue) "schedule 名称"例如,要重新开始/第一次运行名字为 tuitu 的 schedule,输入以下命令:

poetryrunpython .\main_new.pyfirsttuitu要从上次中断的地方继续运行名字为 tuitu 的 schedule,输入以下命令:poetry run python .\main_new.py

continue tuitu

报错处理运行的脚本若在某个账号中出现错误,停止运行,出错的账号将无法继续运行(即使使用 first 或 restart 命令)出错的账号会显示在终端中,相应的日志储存在项目主目录下的 log 目录中在 。

error_screenshot 目录中可以找到出错时的截图排查完问题后,在终端中输入 clear -all 清除错误信息,再输入 continue 即可继续运行计划至此,脚本就安装完毕了最后很想感慨几句,总感觉一部分国内开发者在 github 上po一些项目,教程写得很是深奥,如果没有点基础可能会看不懂,而这种情况在国外开发者比较少见。

另外,投 issue 也是一样,部分国内开发者只是会很敷衍的回复,除非用英语,就搞得很像崇洋媚外一样既然你把这个项目po出来,分享给大家,那么我认为开发者也有责任去撰写一篇通俗易懂的教程,而不是在教程上展现出开发者有多高知识水平,教程不是面试。

今后 Never. 有可能写一篇针对机上运行了有 anaconda 3中环境下部署此脚本的教程,发 issue 问是问不出来的,毕竟问题还没解决人家就先把 issue 给关了封面及终端插图来源于 Pixiv 画家 @mocha@新刊委託中(ID: 648285)。

更多任务指令另请参阅“阅读原文”或“Read more”。本教程允许转载,但须注明来源。

相关文章

网易开放世界武侠手游《逆水寒》开启下载,6 月 30 日全平台公测刘备不愧为一代枭雄,一生不重用赵云,临终前才告诉赵云真相(网易手游逆水寒官网)

网易开放世界武侠手游《逆水寒》开启下载,6 月 30 日全平台公测刘备不愧为一代枭雄,一生不重用赵云,临终前才告诉赵云真相(网易手游逆水寒官网)

IT之家 6 月 26 日消息,网易开放世界武侠游戏《逆水寒》手游目前已经在官网全面开启游戏下载,官网地址为 h.163.com,二级域名取 LOGO“寒”字的首字母,单字母域名也能一瞥网易...

芒果TV《向往的生活》官方手游6月6日上线,5月15日限号付费测试回顾:事实证明,“消失”6年的周立波,早已走上了一条“不归路”(芒果tv免费领取vip2020)

芒果TV《向往的生活》官方手游6月6日上线,5月15日限号付费测试回顾:事实证明,“消失”6年的周立波,早已走上了一条“不归路”(芒果tv免费领取vip2020)

IT之家 5 月 14 日消息,由芒果 TV 官方出品《向往的生活》正版手游正式定档 6 月 6 日,开启不限号不删档测试,5 月 15 日 10:00- 5 月 22 日 24:00 启动...

自带root的免费安卓虚拟机(自带root的虚拟机)

今天给各位分享自带root的免费...

【黑色沙漠电脑版】 逍遥模拟器电脑上玩官方国服黑色沙漠手游(逍遥模拟器最新版下载)

【黑色沙漠电脑版】 逍遥模拟器电脑上玩官方国服黑色沙漠手游(逍遥模拟器最新版下载)

目录: 1.逍遥安卓模拟器官方网站 2.逍遥安卓模拟器官网 3.逍遥安卓模拟器手机版app 4.逍遥安卓模拟...