From 8b4e5d72d3e2c820ae896ebc9483169ae42ef7e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BD=A9=E8=99=B9QQ=E4=BA=BA?= <90805948+KRdingsan@users.noreply.github.com> Date: Tue, 22 Apr 2025 20:52:48 +0800 Subject: [PATCH] =?UTF-8?q?js=20=E5=88=87=E6=8D=A2=E8=B4=A6=E5=8F=B7OCR?= =?UTF-8?q?=E6=96=B9=E6=A1=88=20(#628)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Create README.md * add files * Update main.js 修改填写密码的点击逻辑 * Update main.js 增加切换账号成功提示 --- repo/js/切换账号(OCR)版本/README.md | 31 ++++ repo/js/切换账号(OCR)版本/assets/agree.png | Bin 0 -> 1722 bytes .../切换账号(OCR)版本/assets/click_into.png | Bin 0 -> 13921 bytes .../assets/input_password.png | Bin 0 -> 2438 bytes .../assets/input_phone_or_email.png | Bin 0 -> 3830 bytes .../assets/login_other_account.png | Bin 0 -> 3868 bytes .../assets/login_out_account.png | Bin 0 -> 852 bytes .../切换账号(OCR)版本/assets/out_account.png | Bin 0 -> 1886 bytes .../切换账号(OCR)版本/assets/out_to_login.png | Bin 0 -> 12498 bytes repo/js/切换账号(OCR)版本/assets/pm_menu.png | Bin 0 -> 2661 bytes repo/js/切换账号(OCR)版本/assets/pm_out.png | Bin 0 -> 2070 bytes .../切换账号(OCR)版本/assets/verification.png | Bin 0 -> 2241 bytes repo/js/切换账号(OCR)版本/main.js | 153 ++++++++++++++++++ repo/js/切换账号(OCR)版本/manifest.json | 14 ++ repo/js/切换账号(OCR)版本/settings.json | 13 ++ 15 files changed, 211 insertions(+) create mode 100644 repo/js/切换账号(OCR)版本/README.md create mode 100644 repo/js/切换账号(OCR)版本/assets/agree.png create mode 100644 repo/js/切换账号(OCR)版本/assets/click_into.png create mode 100644 repo/js/切换账号(OCR)版本/assets/input_password.png create mode 100644 repo/js/切换账号(OCR)版本/assets/input_phone_or_email.png create mode 100644 repo/js/切换账号(OCR)版本/assets/login_other_account.png create mode 100644 repo/js/切换账号(OCR)版本/assets/login_out_account.png create mode 100644 repo/js/切换账号(OCR)版本/assets/out_account.png create mode 100644 repo/js/切换账号(OCR)版本/assets/out_to_login.png create mode 100644 repo/js/切换账号(OCR)版本/assets/pm_menu.png create mode 100644 repo/js/切换账号(OCR)版本/assets/pm_out.png create mode 100644 repo/js/切换账号(OCR)版本/assets/verification.png create mode 100644 repo/js/切换账号(OCR)版本/main.js create mode 100644 repo/js/切换账号(OCR)版本/manifest.json create mode 100644 repo/js/切换账号(OCR)版本/settings.json diff --git a/repo/js/切换账号(OCR)版本/README.md b/repo/js/切换账号(OCR)版本/README.md new file mode 100644 index 00000000..46999b5f --- /dev/null +++ b/repo/js/切换账号(OCR)版本/README.md @@ -0,0 +1,31 @@ +// ==UserScript== +// @name 原神自动化登录脚本 +// @version 1.0 +// @description 原神自动登录工具(仅供学习交流) +// @author 彩虹QQ人 +// @match 原神版本:5.5;BGI版本:0.44.6 +// ==/UserScript== + +此版本可以发送相关通知,如需要可以修改main中的notification方法。 + +/** + * === 重要免责声明 === + * 1. 数据安全 + * - 本脚本使用的用户名、密码等敏感信息仅存储在本地设备,开发者无法获取。 + * - 使用者需自行承担账户信息泄露风险,请勿在公共设备或不可信环境中使用。 + * + * 2. 使用风险 + * - 本脚本为开源学习项目,禁止用于商业用途或违反游戏条款的行为。 + * - 滥用可能导致游戏账号封禁,开发者不承担任何直接或间接责任。 + * + * 3. 责任限制 + * - 本脚本按“现状”提供,不承诺兼容性、安全性或功能完整性。 + * - 因使用本脚本导致的账号、数据、设备损失,开发者概不负责。 + * + * 4. 禁止条款 + * - 严禁逆向工程、恶意篡改或用于外挂等非法用途。 + * - 若游戏运营商提出要求,开发者保留随时停止维护的权利。 + * + * 继续使用即表示您已阅读并同意上述条款。 + * Last Updated: 2024-04-22 + */ \ No newline at end of file diff --git a/repo/js/切换账号(OCR)版本/assets/agree.png b/repo/js/切换账号(OCR)版本/assets/agree.png new file mode 100644 index 0000000000000000000000000000000000000000..04d02d66fde2ba5918c53f4861cb9c2944140841 GIT binary patch literal 1722 zcmV;r21WUaP)eh4bY)!^&fNe222V*uK~#90?cIA! zQ&$`Z@ZY_+w=I3r@+=@C(^RI;7iJ=8HlK)d&WuPjMzG?xWc$xVvtgF_&ywxmZCOZI z2ifLELexc_uPnL=(dpEbI8Z>HsI*86E%ZU3cYoYk2#@x*Zq}o}&tJEvr`%u5m)mpC zJuMW+aR6X6HZ>R<0U<)v8fpxNYJQsrfac~FOfVu#gR!x>xrN`R&1Or3u_?I)A(Vgy zW0Toz0RTpwn%>dbne2KHiksi>>*>BzQBlr}`hv+W2B8F*EtaZnmCTI%f@D{MP~uot zj3Gv3qky85T?0Z-#cZ))h!NQ^#OOtUAx6Z*5F_GYh!OEH#E5tpVnjR)F(Mv@7!eOc zjEILJPBM84T|8H|Yok^rXOdkDsYJ;x;JL=oREm^J_~A}>D0&B(l>Yp~T#b?e0FHz2 zPY))%ua_ByIGR~G;zN6Ni9I$L;&vUnAGtZNP`Yq-%H(bqo1YKynq|rm2mD7K$Gg$x z>HKFju^L_y7~*GSPM%~_sX9srRzy{-P)%;PJA)YF=rF{BghEhP-zTJ}K3`I^DQ$B5 zMU$)JNfy@>D_1N~&@>$T!(r-nNBYb!OnLXsQ~$UiV^h{MueST(h1Z<9Q9J91+$pSe5wR)-I)FlT$bWV}bA5~`X9a>GU+xPM4D-?!U zD7AtqUp~d#{dlg?(3Dx+>G(`b`O3r+>Z^n}rV3_bpb7n}Qbhy&tj&g5=#pdsM=#A1rpD)eO;IBp~e5K-`pDF!dYkHIp zH}5_W@^c){U{`On5bM%e46$(dN+rTR5_~u?HVdK8m$ITbu1@P`O7%0PvHKxmFvN*y z@A1?hvqo-yxi3$visO|ub$iZTiFS^-sZ?E5fGHOWL!1P8ne4jPqn+XD(pY}OJsM*P z5dsYHvlQYW7~%jRRmr3($0pktngR&l748`V`$*8#?P+ayKKnX}gCR~tUKTrkv5r(6 zUX~qwPB&8{YVYw_Y=K7uevdZ<0QW7vwZ+Qv5*5cm{ZVUMyDQRpR*txQxoXFH?RO`p zxO#%d!w@H;Fh^3DGjXo%&Li)17drr8`FweCkqiL5KF;n8W@$wL@Z*`m-)}fe7s{0~ z=KZbdUO)F&ryBsYD$%C~otUKn;QDR1soV2EJ{j_1h~v<2^Pj&qGP&L7=gc;LtH}ib z^i;DHtccpSM#FEnoF6JKlJOx1fZl%J!Fuz1ThiwhO1H1mT)XAwI2arb7*E*v>AbyL z(hq$7$Tj_+2f`4?q3eOS>p`^nT>!|*2%nRAePct5%GIfSYA@e(ow_ujYd{!{&LZgsTIAFD-pBQg!y2vk85jpHJ%Kg%>8zC zQ6;5sB)f*^mzbrp)7U_OGu!-=KKwQjMM0*9)v6e$C)7Xa_xWS5K9h(ij-ba6LXbch zVnjUr-U&oJ3^5`eh8PhKLyU-rAx6Z*5F_GYh!OEH#E5tpVnjR)F(Mv@7?DjbS73+{ z+4OT}V~7#iR<10?5F@g!T2)3bS+pqGWgwKGjpZA3x@@|x?tombNOmy@#Z4|()b6PP z09vQZt~FFAxg3PzS8J%&>9T>JVymjEH0;J4BVte#W!PO^RaF_j8TrR)&CM+h#wM2w zzc&dz*W_|Vtzj&|Fh0ZpU^ZJCzHK~p`b;uvLnsD{q82Y+RQK_IeiRY$FVr6ppuPZ1 QdH?_b07*qoM6N<$g77&tod5s; literal 0 HcmV?d00001 diff --git a/repo/js/切换账号(OCR)版本/assets/click_into.png b/repo/js/切换账号(OCR)版本/assets/click_into.png new file mode 100644 index 0000000000000000000000000000000000000000..b99a56d0834b9810c3fa16aaa340d96d1a2bd1aa GIT binary patch literal 13921 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 V&g$wQl&)}ntPND`u5S`I`C%PfJ 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 literal 0 HcmV?d00001 diff --git a/repo/js/切换账号(OCR)版本/assets/pm_menu.png b/repo/js/切换账号(OCR)版本/assets/pm_menu.png new file mode 100644 index 0000000000000000000000000000000000000000..f1c7a3855b4be00b5498bc6e9992b7d4eaeae0e0 GIT binary patch literal 2661 zcmV-r3YztaP)eh4bY)!^&fNe23HnJyK~z|UwU~Ky zRMj2Ff4_U*d$YV*lS~#e**8KW3X&)wRXj?CRy|bf5~=hkITl3=R$I$KNfizi(I8bp z+py?SszL$91u7810tpF$1cZ+BGw0p+`+eW%-rw)O zd*4M_kr4?&gwgENeN`oom&M1&g~MT<(oHWfE}oFjQ99UX@6Px4tS=KSw*0BHZ@aHl zCmIIdWsF_=W0x9^pE>u^+I4MGLt1k)N049?900Iw*M5!{08k@nWLdfEv8BH&x#JJ> z?lFiuRaF515hqXo1tnN8aY|gG{ksZ?7@>$fkTJ;5Of4EWspnMp`3wm!6OL@{T|Lw8 zS|DfzL=sU!#BN7lN@CpIGk-So=E(-F#-3y|n+&5$T^^grPrut!`ogkqR!^eg0Dyf5 z>w>aE2!}`z2_=*ejE}W=Lu~!_FYkS5@ol$1a`Z$~G*W|;fCw=bQ&C1P07iw<)YAD} z`9_P$h=dTz5ne!EAe@F1jaq|V0T!Q=+^>@4aD;M%(ny~uVIhBT&9n1=0LNgURD0sYf&yArRyKm4tf+Qs zKMBVbQ1Y@;_Uu2{?dZFrw_c~2KK0u7Rxa|oU6QQCS`5}0>;DUdQn+PG!SULfa9A2H zrXVNn^=E$D+ui-+OJpPzv)Q`*jqMx%wYz-nCXdHET-b~oCf-3c~~)t@?>dDGn9e)n(=-`9qY3dhmh?6iRaZ%%gd>^p8) zTd{e=yW9HvUEf`*3UkwouO8cUzI||GSdxOl&<`6FBFplSrU~Nr*`a z<`@%(!V@MHc6RmnzzRHh11rXD;-dX}j3#m%^NIsNw9KCsxaZR}|12 zHBs(6^*XKIXw-;e@zmlKYc^arqhxKx=Emk0Ng8EbIg3gBbnhXfL8M3lAkCf(0E=JR z+|}9<2r93xm~W3aoNsc9q8JSa0O+)ucw4N?A2jIn&4+dzYdGE0=epSIR2j?9$ruTx z;dD!LONYPXWYP$;N3N4wStJfDzYJJWjM zll|2%E}@eq6h;}yZQSyCND4?{vhcA7o?SRs9_TNfbLZ2K=_uuy-%nH^6hks3n_{9> zL>ECj;~>al^%NyZ4f>g?0DvmVjA2}i zIZ8!D6alpHyBk_Z9-uy3l9Au>w*lEmpv97jiz8DuJB z;jkp|g4r5Vd%8Uk2t_ew9^LwBuVadd$n3ErBqRw zYrr2ZidLsVWB_V!pL^kRFH@ZvK_&nMfDrQU$|GqRIh2l+oxRn^T<-rZilK1W=?QSW zKq$wwT5ljYDul{ZMNuwo5|Dw>Y~1q6fmLhY25l?=pdi+qY{@COCe~^hK}C|~m1{Pf zZSA<+;tPa*K?w*2!Xcs2uhExKBBh$1nz(%R#&@>tpq7;V)kn{FxeN2MM~?66aW>Z+ zb`09@_4YauHApC-lmOFlqkr{9i~|(_K~ZFtF~7oDlgBPx^>KS=U;eo9vu8~ob@y7^ zaOy&TfDG#U$Cb4T03ty`DW$O%)2I-#tdy_Y%mIL`C<#gN0e>*SjHzQ1?kdcF@V*&o zDfVaX4GH+aC?2vtlH4i=l%7J>tn5E00@Po zDpS%J8EH#f$DCQkvu>O`vItYzo13;(pQ>g6oL;L*h>fvX694vLWzqOtt7WA50sxAl zd|BPFeBIV_ZC&y4*4KVta!r0_OGlSyz<>R-xf5igQzwY;iGWLa5s_(Cz4}X>9qj=ERZH4voO)q$e7ACh)YgudlKG^u<2U*zrX^ z@4zch&7Lu35=2q#L4daQt|yng*zT%FAwVgjium(+Wx2`5z12;&jENy6s;VlAB6+$P zfs{C_6!5t{9+#}qnY0{F1UYiF2eN{Q5LN=-<}PU zd;VDVQd3_QCn%yx!wW)# literal 0 HcmV?d00001 diff --git a/repo/js/切换账号(OCR)版本/assets/pm_out.png b/repo/js/切换账号(OCR)版本/assets/pm_out.png new file mode 100644 index 0000000000000000000000000000000000000000..df31ebd6f55ea0637829cb0530425c986cbb4991 GIT binary patch literal 2070 zcmV+x2eh4bY)!^&fNe22dha$K~z|UrCIBC z+qe;)0YFlsBwrLe@g>f-JwBV{?EgMSU!r}}K0^DaXR}VTyJ@W0Ze&@aNa8a60fGd0 zk?nMj4^4vu;KR&d<^zm>`Rm_crw{?6djcQ;P^bWa?pe3gI&~u;Rzm;*8TYa7-4bLy zQ0z}VGy)JHBJ{z6aA5MmRuA`)jQgQJSlD`sU_^hd*s=x@c?Rf!17E$z3Iu@7a+{fY zQ33!7^402@5P*OH7y;wBmx`lVlE$3KHt&?jzE>+jAc9irk6*W?(jiI!KvChuup0mY zFa$yvMeO25`sd5Tm-~q!A{vg39*hHeh=^be-DmRp@4uHyL&qPYwG^^ew`OyrB!bPx zVv_Jju{=vGWX7-y3jkQXq9#P#JNc3D1Rp(Dj3Ejf*gO$I_-JcCR==F8CNf^|TF^w# z09$(it6g4+HWVm$n^}Orr~J@pwtZWqGPyL{LMvkskqzxw9~mGb2#({JClOurcxQH zjHlVGyIZdefFWAvs*vW1@hPZdc7G|>=?u|Eh82z|7&2F{dUtSlLo-CdS;SHBCj_ST zW*1!3l|UQF3bWeESTF#P+N^V>G})v=p>4c=f!PoM5f}pEj>z-{J9V=oQk$Dq@sD30 z=F`$t`M*S9evo)OHY%<~zN2$%fKCctEp>k>RLL0m3 zTkZ_19M%QJ!5Tv25h$#3nrNY^Un0(qX7R<*coeg{hw{@+_OMb`g$#i!`SyvyC>2+7 z6F%m>z>ZC-70?GuaCS6{E>91DD-;n?xPx)WuO~=PAfZFn62Wmk z6PG8`cW2Yn!%-~QK^jFI5$NaZtdPndER6J_bhZoX(1$jsX67`4#b+&$+&!YF|)Az6UP7ab977-|IN<|Fu<$m(=AQ?qWn}z~0 zR}7Rkt4u!R`gT<)-A*Cj!SO0&XYQPX(Y4tysLRhs_V#S{?tFSQOJWgBjR+BE`zh|Ff{1W1TY}a!ir8YAM;vom z!}?w>Ob*#>EG8o%c+b>`z!Awi8uY?r2(e(C1-qktihC5MmxP3^u#07JkVf$fHja5~ zVjI^!cj-l@G;K>=sxa5J7P%Xc*9)D^=$A#Ni44KT(Krpk*{reL$gI@O1mPqMk%;ad zlMC&F@F1BMI$qRBZ30IixZ%G8wu_vSc_INoRS!C(9k~U z5=5xttRkU62FamZ=kmk#CM)$Q;y0_}>wSR;Hj&y4hkbdWZ(?$d>{s&FwNMM@qvAYW@O0$(lDnsTeGht23d#Zp-exABR=A}*lPO&nh*2Fj-PU4^5 z%uWsx04SvS^56Vwk$qhiF`i3F&(#Dv!rJhuwI)5UfGL#j%)a19<(Jq39 zQ0!9j(p)VzSBuTF$;}|J!O#9CWX)@%h=F3$^?RWWhX6u5g6q5+@>Fzr!q2?*KYSdO zdnT?&Z)SUN6ST5Mpwo?w@1U!@&I5Jg>&t-fKbEx7sNmL4IRF3v07*qoM6N<$g4j>t AoB#j- literal 0 HcmV?d00001 diff --git a/repo/js/切换账号(OCR)版本/assets/verification.png b/repo/js/切换账号(OCR)版本/assets/verification.png new file mode 100644 index 0000000000000000000000000000000000000000..939b7a9d9966ec1fff2d72b300ce322c5548a32d GIT binary patch literal 2241 zcmV;y2tN0TP)eh4bY)!^&fNe22v$i%K~!jg?O9n< z8eJOhy`kB6kVT+G%;FL?O4j;PNv`vg@{e+FRVw90EGjr@xEy zeH4=!6-Z{L#__pgY0mpR=e*l_K>+~B{}ZtPHi7>%?gig<+zYntF>4xCX)%Og%mMt%6O4wc`z8TEL*G9TCG;M z+m$4VAP9zG32$4D<2a7zd1y$fR5A?XbUJ5eXWeeMUaz0R#JKKJ zEEZ$2SUesVMNy~I84L!kR*PZSU@&Mlo6TmkTCHj{nm{11w6tWm+ou*>sZ=77$jQkG z06?u)8w>`GMuX$HD2nZNn`K#!YP%xZR~2jmG}|emb4DTCIzV ziwg@2G)-d|2KCT1O;MEDZ1#G+$z(Dfk0+B!0KmI<@3dO&L~3POPN&m_LcwOUJ$UdS z7z{EDgX1^=07X%nrtNmS!{KnbT+mP=k&tCsqtR%!+VM5xA3uJ)fdq=8;c)o)_*ku0 zzk2m*etuq|P#}L-qtUdaP$&!rgG!|;l}hDunWkx{(>al2OOn*-bku6~lP6DnJ|Dv{ za9f9!53WX0l+kEZsZ_;cu~aG%1mSkO$4`(q2}V(rCXq-qn@y9+G&eWLFbn`79*=KrZSC*x*J`!FU{I}A z!{PAf&!4}4|2`NDR4UcN!otkVOuOAqrBY+6MMf(5&Af-F%`nWu!h+3a>vTHFWb(Jg za4wgVB`RPM@L7!UT<@A zQ=`$0lD2v@927>_x6^f!Nm1=!` z{n4XG0DyM8ElJYDhY#1*)<%gk3IE0@cS_UhO2#xT3x{{H=Yy6bf-1SFhKXmzUqXc{3Uv zH^(GR(=M0GX0wgft($S}2}2)txm*N6q*AGNyNw_SK@c8~$L)5%eED*1ZB3`st*)-V zc=5vH@pwEQ9LEs^;W#c9i%}Hi_xs0TfFKBlVGf4_MbS#7(r&j$FQM1T82xIZYuU9Y z46SOl+GH|WsZ?m1Hk-{fO`A-nU@+)*yJ?!naU92StJN9|2CY^rK@jbBI}(Yc(`k#v z^2Z;4kR&-K50lAsa&l5Gmnn*}SS&P6BmdZMi~g6Da?UQbcf==1~9;y5lG4)5*l zAqcXuv9Y$cHW3d5L5xPDAPD7h85Sp_(Fhao(0c&@vMe{7&4Yu3y}i9wtL622-EQ|p z9s4aOj35Y(<2IWO!?1ilpU>yB*{mQ4@Q~rOrBbOxqtSzd1K8p%EiFBJ_H4|WGz!>D zqbOP`m2$aUCX<2P8$l2RK}eExb#)bw$HU?9>FKE?Nz2R2>+9>|M-9a7_hIN%JkK8= zAAkGyty-bqK@jj>4jaR6x9e~?R##Vp!Qib0>0eVpQCXIIyBu(C_!*T*+WCY;0@<0)Z(EjU^cROt05tS@z=MBA3fmt5uHUBuOGkQmfUP&1Rd; z=J)&Ub~{B;0011vryF0w$yuY(`0?XMCX<2lvwpu%lB8O#HX4nyv$I~W*J822o7wLd zJmdi#xZm%yEDMhUHdQ!|!?6}@{b4ejPA$CaBM5?`D9`g8$8|a#Ns?g7AP52u3>6B+ z)U(ma1S8jU0>5!O`|rjt&3OM8asOA#UB|uPyN-LocOCbF?>g=U-*x;6g=4S!Ld-nS P00000NkvXXu0mjfSo$y! literal 0 HcmV?d00001 diff --git a/repo/js/切换账号(OCR)版本/main.js b/repo/js/切换账号(OCR)版本/main.js new file mode 100644 index 00000000..d2b9e8c7 --- /dev/null +++ b/repo/js/切换账号(OCR)版本/main.js @@ -0,0 +1,153 @@ +const author = "彩虹QQ人"; +const script_name = "切换账号(OCR)版本"; +const pm_menu = { + template: RecognitionObject.TemplateMatch(file.ReadImageMatSync("assets/pm_menu.png")), + name: "pm_menu.png" +}; +const pm_out = { + template: RecognitionObject.TemplateMatch(file.ReadImageMatSync("assets/pm_out.png")), + name: "pm_out.png" +}; +const out_to_login = { + template: RecognitionObject.TemplateMatch(file.ReadImageMatSync("assets/out_to_login.png")), + name: "out_to_login.png" +}; +const login_out_account = { + template:RecognitionObject.TemplateMatch(file.ReadImageMatSync("assets/login_out_account.png")), + name: "login_out_account.png" +}; +const out_account = { + template:RecognitionObject.TemplateMatch(file.ReadImageMatSync("assets/out_account.png")), + name: "out_account.png" +}; +const login_other_account = { + template:RecognitionObject.TemplateMatch(file.ReadImageMatSync("assets/login_other_account.png")), + name: "login_other_account.png" +}; +const input_phone_or_email = { + template:RecognitionObject.TemplateMatch(file.ReadImageMatSync("assets/input_phone_or_email.png")), + name: "input_phone_or_email.png" +}; +const input_password = { + template:RecognitionObject.TemplateMatch(file.ReadImageMatSync("assets/input_password.png")), + name: "input_password.png" +}; +const agree = { + template:RecognitionObject.TemplateMatch(file.ReadImageMatSync("assets/agree.png")), + name: "agree.png" +}; +//人机验证识别图片 +const login_verification = { + template:RecognitionObject.TemplateMatch(file.ReadImageMatSync("assets/verification.png")), + name: "verification.png" +}; +const click_into = { + template:RecognitionObject.TemplateMatch(file.ReadImageMatSync("assets/click_into.png")), + name: "click_into.png" +}; + + +(async function () { + + /** + * 普通的识别点击方法 + * @param obj 识别对象 + * @param desc 识别对象的描述,方便日志查看 + */ + async function identificationAndClick (obj,desc) { + const start = Date.now(); + // 在截图中寻找 + let result = captureGameRegion().Find(obj.template); + if (result.isExist()) { + result.click(); + log.info(`成功识别并点击 ${desc} | 耗时: ${Date.now() - start}ms`); + }else { + //这里可配置通知方法 + // notification.error(`${script_name}识别超时===待切换账号:${settings.username}===原因:未找到目标 [${desc}] | 文件:${obj.name}`); + throw new Error(`${script_name}识别超时:未找到目标 [${desc}] | 文件:${obj.name}`); + } + } + + /** + * 等待正确页面的识别点击方法 + * @param obj 识别对象 + * @param desc 识别对象的描述,方便日志查看 + * @param timeout 设置超时时间(默认值为15000即不传此参数情况下) + */ + async function waitForToClick(obj, desc,timeout = 15000) { + await sleep(1000); + const start = Date.now(); + let x = 1; + while (Date.now() - start < timeout) { + let result = captureGameRegion().Find(obj.template); + //等待1s确保识别结果 + await sleep(800); + if (result.isExist()) { + result.click(); + log.info(`成功识别并点击 ${desc}| 耗时: ${Date.now() - start}ms`); + return true; + } + log.info(`第${x}识别并点击 ${desc} 失败 | 耗时: ${Date.now() - start}ms`); + x++; + await sleep(1000); + } + //这里可配置通知方法 + //notification.error(`${script_name}等待超时,请人工介入。===待切换账号:${settings.username}===超时原因:未找到目标 [${desc}] | 文件:${obj.name}`); + throw new Error(`${script_name}等待超时:未找到目标 [${desc}] | 文件:${obj.name}`); + } + + await genshin.returnMainUi(); + //按下alt键(确保释放) + await keyDown("VK_MENU"); + await sleep(500); + try { + await identificationAndClick(pm_menu,"左上角派蒙脑袋"); + } finally { + await keyUp("VK_MENU"); + } + await waitForToClick(pm_out,"左下角退出门"); + await waitForToClick(out_to_login,"退出至登陆页面"); + //这一步根据 电脑配置和当前网络情况不同休眠时间不同,建议实际运行之后,如果有日志 : 第x次 识别失败,就适当增加休眠时间 + await sleep(9000); + await waitForToClick(login_out_account,"登录页的右下角退出按钮"); + await waitForToClick(out_account,"退出当前账号"); + await waitForToClick(login_other_account,"登录其他账号"); + await sleep(1000); + await waitForToClick(input_phone_or_email,"填写邮箱/手机号"); + await inputText(settings.username); + await sleep(1000); + await waitForToClick(input_password,"填写密码"); + await inputText(settings.password); + await sleep(1000); + //按下回车登录账号,弹出用户协议对话框 + await keyPress("VK_RETURN"); + //点击回车后,等待特瓦特大门加载 + await waitForToClick(agree,"同意用户协议"); + //如果当天上下线次数过于频繁 + for(let i = 1;i<=2;i++){ + await sleep(1000); + let verify = captureGameRegion().Find(login_verification.template); + //等待1s确保识别结果 + await sleep(800); + if (verify.isExist()) { + //这里可配置通知方法 + //notification.error(`${script_name}触发人机验证,请手动登录。===待切换账号:${settings.username}`); + throw new Error(`${script_name}触发人机验证,请手动登录`); + } + } + /** + * 根据不同网络环境和电脑配置,此操作可能会将领取月卡操作取代,但是不影响使用 + * 如果发现卡在这一步,请适当延长sleep时间 + */ + log.info("点击中心屏幕,等待提瓦特开门"); + await sleep(5000); + for(let i = 1;i<=8;i++){ + click(genshin.width/2.0,genshin.height/2.0); + await sleep(1000); + } + await sleep(5000); + log.info("执行开门自动领取月卡"); + await genshin.blessingOfTheWelkinMoon(); + await sleep(1000); + log.info(`账号切换成功,当前帐号:${settings.username}`); +})(); diff --git a/repo/js/切换账号(OCR)版本/manifest.json b/repo/js/切换账号(OCR)版本/manifest.json new file mode 100644 index 00000000..cdfd1ce6 --- /dev/null +++ b/repo/js/切换账号(OCR)版本/manifest.json @@ -0,0 +1,14 @@ +{ + "manifest_version": 1, + "name": "切换账号(OCR)版本", + "version": "1.0", + "description": "使用OCR实现:从主页面退出登录实现切换选定账号。脚本问题请联系作者。免责申明:所有的账号密码均保存在本地,请使用者妥善保管账号密码,请勿外泄账号密码。", + "authors": [ + { + "name": "彩虹QQ人", + "email": "846224811@qq.com" + } + ], + "settings_ui": "settings.json", + "main": "main.js" +} \ No newline at end of file diff --git a/repo/js/切换账号(OCR)版本/settings.json b/repo/js/切换账号(OCR)版本/settings.json new file mode 100644 index 00000000..2357498a --- /dev/null +++ b/repo/js/切换账号(OCR)版本/settings.json @@ -0,0 +1,13 @@ +[ + { + "name": "username", + "type": "input-text", + "label": "账号(账号只保存在本地,请妥善保管)" + }, + { + "name": "password", + "type": "input-text", + "label": "密码(账号只保存在本地,请妥善保管)" + } + +]