From 60a10dbebb79f417602d2209feaa81ce9e9a895c Mon Sep 17 00:00:00 2001 From: SlyAimer <2289782085@qq.com> Date: Thu, 16 Jan 2025 17:07:05 +0800 Subject: [PATCH] =?UTF-8?q?=E6=91=B8=E6=91=B8=E5=A4=B4gif=E5=9B=BE?= =?UTF-8?q?=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 3 +- README.md | 5 +- example.env.prod | 2 +- src/image/get_image.py | 92 ++++++++++++++++++++++++++- src/image/rua/1.png | Bin 0 -> 5551 bytes src/image/rua/10.png | Bin 0 -> 5098 bytes src/image/rua/2.png | Bin 0 -> 5551 bytes src/image/rua/3.png | Bin 0 -> 5538 bytes src/image/rua/4.png | Bin 0 -> 5538 bytes src/image/rua/5.png | Bin 0 -> 5929 bytes src/image/rua/6.png | Bin 0 -> 5929 bytes src/image/rua/7.png | Bin 0 -> 5546 bytes src/image/rua/8.png | Bin 0 -> 5546 bytes src/image/rua/9.png | Bin 0 -> 5098 bytes src/music/cloud_music/cloud_music.py | 1 - src/qq_plugins/fortune.py | 1 - src/qq_plugins/touch.py | 37 +++++------ 17 files changed, 114 insertions(+), 27 deletions(-) create mode 100644 src/image/rua/1.png create mode 100644 src/image/rua/10.png create mode 100644 src/image/rua/2.png create mode 100644 src/image/rua/3.png create mode 100644 src/image/rua/4.png create mode 100644 src/image/rua/5.png create mode 100644 src/image/rua/6.png create mode 100644 src/image/rua/7.png create mode 100644 src/image/rua/8.png create mode 100644 src/image/rua/9.png diff --git a/.gitignore b/.gitignore index 9dd20b8..660f8de 100644 --- a/.gitignore +++ b/.gitignore @@ -4,4 +4,5 @@ node_modules .xml .idea chat_bot.db -cloud_music_cookies.cookie \ No newline at end of file +cloud_music_cookies.cookie +/src/music/qrcode.png \ No newline at end of file diff --git a/README.md b/README.md index 0378396..b488b5f 100644 --- a/README.md +++ b/README.md @@ -23,9 +23,10 @@ - [x] 待办 - [x] 天气 - [x] 今日运势 +- [ ] 今日塔罗 - [x] 点歌(网易云 需扫码登录 在 src\music 目录下)*PC端 QQ可能播放不出来 原因不明* - [x] 图(返回图库中的图片) -- [ ] 摸摸头(待实现动图) +- [x] 摸摸头(待实现动图) - [ ] 今日老婆 - [ ] 群老婆 @@ -91,7 +92,7 @@ QQ_BOTS=' "intent": { "c2c_group_at_messages": true }, - "use_websocket": false + "use_websocket": true } ] ' diff --git a/example.env.prod b/example.env.prod index 62dabab..63d9335 100644 --- a/example.env.prod +++ b/example.env.prod @@ -9,7 +9,7 @@ QQ_BOTS=' "intent": { "c2c_group_at_messages": true }, - "use_websocket": false + "use_websocket": true } ] ' \ No newline at end of file diff --git a/src/image/get_image.py b/src/image/get_image.py index c36bb73..1707b24 100644 --- a/src/image/get_image.py +++ b/src/image/get_image.py @@ -2,7 +2,7 @@ import os import yaml import random import requests - +from PIL import Image, ImageDraw with open(os.getcwd() +'/src/image/config/image.yaml', 'r', encoding='utf-8') as f: image = yaml.load(f.read(), Loader=yaml.FullLoader).get('image') @@ -13,6 +13,9 @@ with open(os.getcwd() +'/src/image/config/image.yaml', 'r', encoding='utf-8') as ju_he_token = image.get('ju_he_token') ju_he_image_list = image.get('ju_he_image_list') app_id = image.get('app_id') + bot_account = image.get('bot_account') + +qq_image_save__path = os.getcwd()+'/'+image_local_qq_image_path """本地图片""" def get_image_names(): @@ -28,7 +31,10 @@ def get_image_names(): """获取QQ头像""" def download_qq_image(member_open_id): - save_path = os.getcwd() + '/' + image_local_qq_image_path + '/' + member_open_id + '.jpg' + if not os.path.exists(qq_image_save__path): + os.makedirs(qq_image_save__path) + + save_path = qq_image_save__path + '/' + member_open_id + '.jpg' size = 640 #尺寸 40、100、140、640 url = f"https://q.qlogo.cn/qqapp/{app_id}/{member_open_id}/{size}" response = requests.get(url) # 发送 GET 请求获取图片资源 @@ -37,6 +43,21 @@ def download_qq_image(member_open_id): file.write(response.content) # 将响应内容写入文件 return save_path +"""获取QQ头像""" +def download_qq_image_by_account(account): + if not os.path.exists(qq_image_save__path): + os.makedirs(qq_image_save__path) + if account is None: + account = bot_account + save_path = qq_image_save__path + '/' + account + '.jpg' + size = 640 # 尺寸 40、100、140、640 + url = f"https://q2.qlogo.cn/headimg_dl?dst_uin={account}&spec={size}" + response = requests.get(url) # 发送 GET 请求获取图片资源 + if response.status_code == 200: # 判断请求是否成功 + with open(save_path, 'wb') as file: # 以二进制写入模式打开文件 + file.write(response.content) # 将响应内容写入文件 + return save_path + """删除QQ头像""" def qq_image_delete(): for root, dirs, files in os.walk(image_local_qq_image_path): @@ -60,7 +81,72 @@ def get_juhe_image_url(): return random_url +""" rua 头动图生成""" +class rua(): + def __init__(self, img_file): + self.author = Image.open(img_file) + + def add_png(self, png_d): + # 重置图片大小 + author = self.author.resize((png_d[0], png_d[1] - png_d[2])) + + # 载入素材 + rua_p1 = Image.open(png_d[3]) + + # 创建背景模板 + rua_png1 = Image.new('RGBA', (110, 110), (255, 255, 255, 255)) + + # 使用预定义的参数:jd,合成一帧的样例 + rua_png1.paste(author, (110 - png_d[0], 110 - png_d[1] + png_d[2]), author) + rua_png1.paste(rua_p1, (0, 110 - png_d[1] - png_d[2]), rua_p1) + return rua_png1 + + def add_gif(self): + # 获取素材路径 + png_dir = os.getcwd() +'/src/image/rua/' + + # 获取素材列表 + pst = os.listdir(png_dir) + for i in range(len(pst)): + pst[i] = png_dir + pst[i] + + # 预调试好的参数,传入素材列表 + jd = [[90, 90, 5, pst[0]], + [90, 87, 5, pst[2]], + [90, 84, 10, pst[3]], + [90, 81, 8, pst[4]], + [90, 78, 5, pst[5]], + [90, 75, 5, pst[6]], + [90, 72, 8, pst[7]], + [90, 74, 8, pst[8]], + [90, 77, 9, pst[9]], + [90, 80, 8, pst[1]]] + + # 重置要生成的图片大小 + self.author = self.author.resize((90, 90)) + + # 绘制模板 + alpha_layer = Image.new('L', (90, 90), 0) + draw = ImageDraw.Draw(alpha_layer) + draw.ellipse((0, 0, 90, 90), fill=255) + self.author.putalpha(alpha_layer) + + # gif列表 + gifs = [] + for i in range(len(jd)): + # 将参数传递给生成方法 + # 添加到gif列表 + gifs.append(self.add_png(jd[i])) + + # 文件名,是否保存所有,图片列表,fps/ms + gifs[0].save(os.getcwd() + '/' + image_local_qq_image_path + '/rua.gif', "GIF", save_all=True, append_images=gifs, duration=35, loop=0) + self.author.close() + return os.getcwd() + '/' + image_local_qq_image_path + '/rua.gif' + + if __name__ == '__main__': print(get_smms_image_url()) print(get_juhe_image_url()) - print(get_image_names()) \ No newline at end of file + print(get_image_names()) + file_path = '8A91A2F3BE5B5AF3FEC97FB5AA6D9B38.jpg' + au = rua(file_path).add_gif() \ No newline at end of file diff --git a/src/image/rua/1.png b/src/image/rua/1.png new file mode 100644 index 0000000000000000000000000000000000000000..11e468c89fcf22c82b374bf9ffbf74c339853564 GIT binary patch literal 5551 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 literal 0 HcmV?d00001 diff --git a/src/image/rua/10.png b/src/image/rua/10.png new file mode 100644 index 0000000000000000000000000000000000000000..63f7c7b6a857136834dc2300de6dd8df2d6d8f07 GIT binary patch literal 5098 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 M07*qoM6N<$f<+VFbN~PV literal 0 HcmV?d00001 diff --git a/src/image/rua/2.png b/src/image/rua/2.png new file mode 100644 index 0000000000000000000000000000000000000000..11e468c89fcf22c82b374bf9ffbf74c339853564 GIT binary patch literal 5551 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 literal 0 HcmV?d00001 diff --git a/src/image/rua/3.png b/src/image/rua/3.png new file mode 100644 index 0000000000000000000000000000000000000000..204c879b4fe9497940989abf80ad9d3ccb56187b GIT binary patch literal 5538 zcmV;T6+Qu7`L`ftN!7_pb@&m{NnIu>SI})-Z5<&z)m9$hwQhn^rK$gUFbV?&+SvUt9yE8 zXV&Y-kw*2duDV}+=bU@)xo5mQ&*`NuPk!;Ud6q`>13!M3cRe@7^8(hB|Ni(j{n5#w zOSSd}Q92-Mv}cZq4C9zq!jPAB->30tL_c!JJ=YC@*90tlxxC^uR7uc~b7YcbR11RX zLENX}eD^%rc9-roWPk!d5P&3L$rAE>19vQ7%`itAR)eJ*+cbXDuTe6Z*an11<5o2^ zM6My#@P`o>ESAxj$gfWyIZkM3j=lY!_gr(}jsz?QM^sFOs$tQ`9gzmd5+aRXB^n%k z{y~5ewrNQW2s1#bWjY!$SQ}wjyb{(o*6Fq%d*?L)?oeQ{T5|zWAV?#M2oO~uxQ*|g z;{xg46B0#9B>>}mM0L-f`As<&$00ap1}qT=tkEbV-!B-B^^`oSjWW99XWxJ9fE^gD zxj-pZ=E}Ur*5ax@*~a?3YhAU825mffZTAAl8&C)8{< zk5xS`1y-dE(kiXdrsgE7ymk?rv>jTc#x!91x++yBPJtFNJ1$^?!yXvG(gjR)gOg`1+^$lg8(o%CReK>z5jarGr0w()|#<9 zRZLjKq{GNTyg6Zq_NukkDzRigaR3tMK`+e#dn2p`lZ>)j0fuk(xuU@$W!HZCzF#~v zU}dnDP-%3;VC~mO(l$n<%A^QO&=+b@&c?st`wWD;gvfe{ISQ1_><|2)SU1Ne*@$X^ zPYHR{B*)(SK6wsES~YrEN_o&YG++!CEpU-tS>~K&WRbnnz>s5Olv%Os!Y0iSEmdrB znWF(A1B#Z+`9j8HWB=+?bsPBgDUgQQ$!N>~0Vv{r+JsuG9p1j{z4spoH1Dfl`dnUR z{EtIimFo6&ghgV17HKlqIj}6jw(qlDfx60}uFSSCOSy^fQx->j4ZzWW2pDo5EwEK0 z&1N{=Xqk0&4S@1S3FUs1R>B7FI|yJ5*0CU?#C6ljut_@w8W_tKBO!SdQ_fC9FdFl^ zoG5IH_;sH`g0l|)Gim@G>v2pZIhBHHomlw>J2g9g?1cB$w2w3?523Bh{Q zYVkVG!FA+?s zD|Y%lT7)S82%tb(QDnj3+or|-d{}%0Ng7eJQ2^wv6idI+u)t~1L@angabICrtFubO zIAxYC1DJnY9v&&X1l5M7EroPuT;;^7G3#-OS(8RJHURd(sx8w1L7wxru!J17C5+Ka z{?#mHfMWAw(J*2VG&qo*@tDFmrmT07g4L7MYNM}N0GACT+5vFcfLcLBeZw{~j1%$4 z#j~!|ed4=DF?nOW^KxzPefjgBWM;Km&4VGaK&qSvjxNN>Oq|U&rm-Eu8gf{ofhgG@ z$DRmF&`5eYPeyS@S$Efh;z~3a(4{1%-Q8~K$eC81L4#~;ZciK3ux&G_S+zM?TQ6PP zYOV0|f^kU_+jqG8{@-56E(WVA{&qE@od*e|VhBRBNq~|@hB})>F=d`7=*-v>GEA^9 z9Yxk=pwazsY7?>Di>ATlFd0$Y^k*!Pii=$usV<{yi!@NyYcgyCP*F5w zaM1Ab(j%x;V@IH};yB?3UnP%vO`lrzfEx)wb-P{a?{=xPzOitrWj*cDQ)-_EN$&$- z3}nJJ9g zANGqz+vzexs>Ef5G`a@C1pw=MpGXyh0EmbHRV4x%Dd6;TkOQCw4}g);8p5>B=2oRT z+&|j6j|fn1Ahm=TI~8Rw4U9@yPmW0kXy9tYKE-5lJo-9wk&|XdI&c&Xvl0Toto4qmpEHOvuLJ!Y0S; zVxtD9KuzrwY!pBQqcl*O9aUeyD^=>smHmz%l~ghAOl#Wv*WRR7jc}Bne)=r^;a~hs ziCtF(7KYQw8T4cKTzPzY2z+Ft4RHx5xUb@JL+!y~&_K-t<)Cuh;4Bi?zMWA_gIWZ; zvS}PJ{!JW>jFt(c*EzCULc^fI2D`EPMUD-}?G<(OkFs z&f8v{@25)1@gxN>s6~JUW{G|ZHnwK&Rf@VFRGI^m~syYJcNBZ~LL#Rq4{H4vfPg>;hmg2U|C; zmd>vXH!YhwhWv2rSSa^gBHv)rJOOayIHvAi*Q!9c=;xj}Yrn*+6#?h3AN#lKCIwnR z)65b_L%a0oPi}5*l-T72Eh_{7=u)< zL&-IF5+DR9FO4XjAo7xwVtaZtm3XK-qv76eiBXV)vPuAY)v41ZmGeT7zk1+Z`9FOA z%cV}Vs6~XqHa0f+13q>7q-B@)AOHM`xvskl9zsYqAX^bV=guyem5sP_TQ#yOHVR=R z0QK!}o#k!U``Zto>zO^v%Afqfd-KQs?r}a_Y$*g_A!HUb0|xAdTVKih7lK7gOF<+;AyJ7hJ^7W&=Kx5LKJm>LJU~?fJ0`nbz_vCv zxX%T4?dz}Wz^u(1uSkx_;dc4~4-CRCHE7zdgNer=flU|AUt~4`B)I7v6+d&mB>?os z*MA@PZ(giGk+EY?fp~vJ{dFAit6%#cj_A-qJH>jES(TvEi`1>eA5++DQWl2n@wE}O z4I0cSGGC2|^r^G}r0>1`_L*?Yi&;MO=)Zcuf9DS~!!VB4Pgc2YUi12!Xl=Vj@BXEI zY!(?tX|PE0C7iI59`XRgI9g%O0bsl7nDV$sJG}{IgUd5R7{aO-i#<9HIn+Q_)E{tI z34eCj!#E;AXvS=y62qeJ29~Wi#CzPc_t6Z4fK4w0HD8uegTg3rED%K}+2v#)>AVO? z& zT5l49C^|o4-C@|vQZ2sDY(S2>~@~}>RDFG$SQa}l40Bi*+F&k08 zmQ(Lsc}RZIfa1$i$kb-3#^+TY@|ex@TPVI?Fv|div8)w<)alSlXO)7^D(8ZC+HKmp z@fPl-!*1d4HLv|1`s7FNf4L~f0`b21>5u1Clbx4Y>PWi`GBy~j;#k9g24+ggYS{1F z9Kn4299_9mkkXO4*J6CpTBcIT2&!_d( zX$0jRzxAgt8SoAamIg)a680f;DGXcIhOw%wV3vTRhhTJ}5PN^y*$$}LZc_KzXDNx! zF?c)O9ga0_Y!WrHA=TmnO__tOj*fr>zy0J>&;=1VQE_i@L?T zT@S$R3)UjWm=icJP}0t%ynv`CDK(()q19sfUgNUOa=gi^sjXVvx=jMu(DV(5rZXNi z5(;YTwj7;wJ@jyoXTZXHNzDuWPQm(!-tvY-IVv4CheZknP z)2i^zs4HFWfK=pz!(7hq76AD(Wqb5_Qh~GlY^n}}dfse;KQ&PTcGo<+r)EG36QwYT zu5poG&glz(|48mly4Q?t%&e;Eo*ERL_)>yOT@yPEW$Qr1NinWv)QK$uqQ<_+sZ}9T ziiqg0gK>VUyjAW_n28Wo6=UrCX>|=-HJ;F#XEKY^az-)iS!o|LxUg*iw3C0EM&TyC z>F(b+R?xgpf9%h#8mua90}xglbyfwamV#0MVHn!HbzP8y%tUN5Nt`0sC&fIFOjARR z2n8N3P_v5)j%Z-#mGaSbFGl7a`+8!8OddDc!g$WoTxRng`W$^Oo*j9T+bfs&yyJ|p zFj%&@hZ1>QJDFhGDs~lLR^q4`4B^A$Le5}HIZqoUlPicM8oMu$^abUwY=Mr9OwB+g!(O5H=~O?^2eu8DxNVT!49>c=(TV{@R0bLnS6V z2`q}8FHs)0ibbTpN&qD3Xj0NZglj`o04Ac@prr~E zb1vdEXv_gNUmR4;M0t0*Au=_)9xvXm<+jo4@_UFzkn+1lMP?ags7f;`+Y3~Q(ST@% zqhd_J9r(dak|~&rN#*?eICnU|Mw~K+#&1g*gnpl*iDw&ox8CHGGA(mo zI=;eHVf-*<=Ae5!ATwJfols+(+D7Hs>SGzK3`?p@PZJ_z7hTrK6jw3~r~(B`Tb99V zQ7fOG1CRG*%QpOLOWSpBlv+b|ZDrJ1lYA|59q_{}p6dRGRbfm&wP^U8A*xp;EV(TJUCGeaN zNPrShP+VwFJ+n;Y3tOF1`38NQKb&U3fFj{1?2aflbAh+k+muCLryXyTw(}jT<+HOu zu2y`o1TT^sAkc7WScG90lFQUHFWegyljd6KplCF# z=P3iZxjI`xh8Z$UY3Njwalt6+E~&3Rt+qv&R4&Q>B1ngm=jCTa)wCp|uDoAVuB&mw z>6QHIS?a095X*XaBUU)R1Rcez@J^RJW7dKDbS`=F3 zItEQ7xeOGFjnSULH=~^%fQ#$|Xi}`h5`kmZ$_nma+ zFq!03*(W++y?4=0H-%ihaA`>hmKUG%_xv@h)_6NxW8lz|@*-6QLfi^1vW!6z!q67jBJ*CNwnQ^viVX^7 zVOG67xBH%Y4zRq(ybpAI@)r8gF{Ocfzk2uEm{}Symqp7|c5!81jU)#3H~ANtGZZ#?Vg-ui?2L1%8f_J&q2 zH63()2e;Nkl`I19xCH>|dAnffgAYCYg2~A^^uJ_6MU^+b`OU>mdOiB@rwd(QWt8`0 z<~#tG5e>2iLqt#a{H|6=?|ATqn|F9!{Ljaa-2d~rTm6g_@Qc)`oF`K|p~k|EEm}XZ kN$>v655IWQ(TM2(0i-G`#Uu8Z*8l(j07*qoM6N<$f_mDAjQ{`u literal 0 HcmV?d00001 diff --git a/src/image/rua/4.png b/src/image/rua/4.png new file mode 100644 index 0000000000000000000000000000000000000000..204c879b4fe9497940989abf80ad9d3ccb56187b GIT binary patch literal 5538 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 literal 0 HcmV?d00001 diff --git a/src/image/rua/5.png b/src/image/rua/5.png new file mode 100644 index 0000000000000000000000000000000000000000..4ccfdddba14ee5f28551d76dcfa67efbaadca807 GIT binary patch literal 5929 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 LNkvXXu0mjf;h|$Z literal 0 HcmV?d00001 diff --git a/src/image/rua/6.png b/src/image/rua/6.png new file mode 100644 index 0000000000000000000000000000000000000000..4ccfdddba14ee5f28551d76dcfa67efbaadca807 GIT binary patch literal 5929 zcmV+^7uM*BP)3 zeXL|>S%1#VIdf+2=iJ-vc8j6XXiOEP8jZ$)BqV@{5`&?BKuM@UYD!xZpr982Y9T@^ ziGY7VittAzCL|?bG=@a|Lkv;yqZ*=w7F)L4?ryt#=iZsQGiT13Ip+7A_j%_z@4RPb z?r!hi+udJs_k4fM`#aC)`@HW4d7jgi#N+?^PdSbHM2*$rsd{}89B7+ldGe3`f+1eHiJjXBeJvfqU!uj(8FO%T@ga^Cq#meDxNh_W$nzvivK zb!4fVP>Bj3|Hj|t_@Q{=*t~?V zpvQB<*(XHF`SMIl$Yel?xmNbc$AsU8-h4FQ>U&{Z&c_l2KqBNA8C9gW<$Z)uORTvE zh#;1di6utA7w%{88BXsxc5IIjFftM~(#NpW>jwY)*MF7&<5wO%G(#SI>+c`SbwlW{ z-e)^p_zZECu@-0*H4k#0+!NbYik5`W&VVGV)~Kx7gq$o(DGZC}G!&^LeVua*wn|he z@YAn<>t(AymLUCw;S1E{U|Tn=_a<}5ArG-4MRGs4!DZY1aPVI8PVy(v>l*S5ts%yl z=XV&X&N7p0N&mfvQ1iWvUOq~FCX&@vpa9tQuRO?eZsgBh| z(p=y^E6o<)^HQCOnwE+x0(?K*2i++8nt8UxM~+WAw4L#NJYtjZ3?YO)v^<;InmN#_ z&8$$yi>x4L&h@TT$vTMZ42Qh$Z@&D+OOmD;8$=$v;(AjqT!|3K{wfI)!o5GFU{UhWnA|k3)_L!IiO$UQ*dZBZm~TgXCy#NWfC0XOfD| zoW3je)mlx8M9n#5f$WK+0$0pA%c#Aj2%2YqmLY7O4f0*T>^)tn(e}jkw#ZRm+>m++ zO_9N6A5$FGizVeuKx*!pBtr^Kuc>+=>hwgkl5mT7fI3j#!A4?03~#0*UPe)) zbXpuYi~Z()X;8E|?mvuTYUX2me<44Q8cZ6bYaU5U5k#h8k%w{}28l}+d3hRIHI??e zU%i~*M$!7X$ENrsB^^$KWl>eqkWrrVIxn43Z)mpLZbxBh|qVOCn z!;qyhp@4}A(h)EDS|eG%e*2wXl9ndOzOctdb{z^=eYtrwa_xq|X&jqwA@b(P^l|GR zin$lX&GwKE*t*%eqZb%fQ3(FIEjk?XE@p1oV z98XD)LMuT`T3BZ_D5}p#Qb-;ZHjfxrg-OH9QXjX3q*K@0RcCGtLQWKKZApddDs79T zAn!IvSmmH`L<-P=?lM)90YFk(g8>a%E$ZP5-|JD9PAK0m2;W(0v42+E%V@H($>(e7 zdLe31IL@e@PMD}+lGu--8P*Hwh2*ky7n%Voa2WWt#DOK~QsJ{jaDTlvLsS!$?S|f- zfl+1JsH0Ihj&VqE2@!ypu6oC8G_u4bDxVlPS`@4lp+VSaSg8t|5v{GPSw{i@QJtt} z2_s{x_#L%G8JqQ%JMJw>(V-Aj75|V*`-|r_6S)f+LWHN`OFzzkw_e1%gfmbykZvhD|0$10Rd_0%v{;2y4dlmUrD{ zNxHOvW&vDvR!X<1c*P|L#58Kfx~M2J#E3LZi3n!`N|6*%J22*uik-C3@q=;ktTaiv z@r987VA}Y--43m77X4gflLbh-&r`I1y}s`&f#WmY}M@(f0MEvnd>MyfvixIn}RHETYPM zmi8@0lxh^&tIUe z>#yT=NYm!1%j=M+_SOlyxLZ6Qst@l}%QG6L6B<&VwxSxp|1(s)bJj=;8#crT)Mqj; z>~!rjS%O@f;j)Y{q&F+FoGp&ty!yids5ZLHht zPC$ajV_I!Zr9|9#S&WDAXT6 zIv00Xo$c-K)48)}O80k(aHYW4;BLeFpwAH!L{fYJ8Q0(R;}o?w>0+nD@9Dl9&H-^^ z(_jmsf(2RyiX_3~{LxpwYI%alF(WhNEXs?OZd4|Rp`3$WZ;w5j;a;DfyHKc%Ge3CB z9(Prgz-|0x2=M{e;r?Iz`oGN0G=Jd(zmZ?)6(24d8E!kI93JAgzw@0Eu|g7-B30r6 z0+2!hNE!q!df5-3I+z5ZpB-M9qrocsVnC8tYG~@QiOtbbKXP9pIrzasPL-{gr=FI@ zFWmZSK64Q%^YFDlyC*;0?a|;EE6 zkf)=}7l=+T%x3ypB=U#k2syAZP#LbxaEZAT$i2S$A5R=w@gbz_|DJfpZi^JjQanEi zej!OBiS2g#U@C4V(dlyzRKJYtMyItRbBlC4$3KqbfE;)+(B-b=_-x4KsIbE%WgZ^5 z{nu=JBTyz2G{d3TIQ0rEMK}NCE9qC?`~KiS1PQb)atZR<9-{(#CUv685jR>S2gVUm zzZhE|Ig5y?I{w{rgJV6i0n&zLbi+xy{X?JOcMZPz^~ZAE)#9ozIi>?qtnb^#HYZ^_ zjLK?_svQETwBCNt2B2^;5!*;`3F#4XE(b>`EiVQ_Aw+7IH6#FKNl~@i?s;S?SQ=bz zR6d3+&Jw7eOGu8SZ!|eDtUZ%{xmlRaa~g2Qaj_05!8-P>G^ZYi>$Qnm zE0q~(r$A-hks%&AX?-E*$@6FJzJrn@YVB$vMqo1uQs4(Sx)=d4?J|HIxMOIvE|gIK zy3UL%GELvkuy4}#rUsyKtkO zs=6~z=NZUBy%?2qmZ>HE*_vh6C=>MSr~O z?Ja|AMQSv{c~Y@RwQ-FK$3W9@H6=ACj)JLm7DU|FQ&hoFdy|HPkk-cInJlozwMY)l zQ*opng9Wf-IUR`o5qG1}2x)DrZR?o1AHKa!>#h0oBwVZH0JV{+O~VpBp8LJtTw8Mx zFHVTbjKh$tevf*y$tAO!jXL+kuR0`2BJ*nZ(iR~Um85NmbheQlNNY-Ls~iNkTR~v% z5xV1NxK^2H634Wc3~5x4DT*VTioeC229nU7d@aMaTzLRf%7m~qxp3;C8%D+H-qX2& zT{73B)T$^9*`uwkHl;}+HM-9PY4|^X@Q(a_ANj&HDMghv3Hwg*xl14!sauK^_n}fa zf`6jI&Y?(RyIrnb1EBhzeX387e&X(2GQ8Ik<~j+BpvPq%lpG8L#5zh{>#Y{8)^gf7 zd4jgvZSJU&Kd8PNue+X}JD<{59(mx(&ir%?FiX%S#3u(u!x@FvYPLATkcTmQbx?Qm zck1Lxt`)=jxue66T)KoXdi7k&sy#nGVuDfon(A)3%!>d~DF+m5t$Q|{J_1qb$ zttc|T9 zS33_F!iQMK2au#yBf7R@9k@DKhDKJm{)wA`XqsnWyVc(2XU4-Jje9*BjmDNJA*mQI zI^@dJzx>F(`Dk#K`r%2s`{P%KLlHdoxlb;ZAfwibs?S1AMVLGy2xxsJE(lV{RBDHZ zrz=SkDbkq-H;yWm2g{3&2GkuPyFQ{g8G9n^A~9FxT4Mub;3Og_G(O&jDo|E#dm$^ftS{lm|y*ABn2t1hYRjbIzgV@0?=y3uQqz$icDZn;@ zO4JkxX#!~oa@Nr>R^meGR)@`mzD~Ovy9cC9nO-CX??Ru#G*C=qpmUD zXmIug?rxU>!N=99VC5jg@<0ZLJ!n!$xwY6Yu?YZ@NZ+)G~ffIv2Nb$FbOuAID760D*6#LCrX%pxb4VP#b;Er$2vure*%b2i}`gxIvWd z(aaJs>*!SLrgd76ru{zHZsh~^lJqg|DK(J6v3463{bqiEK*d#%sKnDjD1_nM2&!vR zb~X+KH6;wxAJm=LOh|v{^s}}`ufBC1{n4lY;>d{#K6>{ZCDBH5lFU$btjp2|eNO56 zaHB*PGSysY$vFln?$6crM;Wt=y$ zO{*9^myKyMuG>e!8%$8SI#Y``q$F(6W>{7r1@+c}?3vHEpAXzF_RiBeM7nqt- zx=>)B;O(&i#^^rtacs4>I5fZ#N!#!L&wtZ@{@b@f(2LvZ2S9M|+u!6hjwRA`LwNR) zAx%T1PU;P`+H)bc3mziKlG0#!i{jdslC=)(ghj@sZ>~0r>_!+`VrH@v&a5U9Y$t~3 zPOnF2o_?A?P7I_vs%%8)PST(U;#O7JVB~>2hk%P!Dv0Tl>3mB!W=}G9Z#^o`3DXgc z)npH3I`a01-O_{)GogTq$q2Jo)kCTwU}ev~98ZBP?kNUgTvVBIR|hf_X_(r1+$c?W z|Mrb9=WdScjr_8p7^J#LbT(tq+oS!??veF7u>`rp3J(G;bs(!svPh{tjS^`hO&ab# zEpgG9r3z(R?p!`1MXAcF>*)a8G!q&7#zScAG|NRr6EY7+g>c#NH21&fH}gfKt!2MY zCAyOqiBmD-qI=+T^$~w%hLa>U|H%fXATw?=duB2hDF&C-ilCMEII7PDNUBL9wh?kr zdsMjO|3B#WZ~LWuuYMz4{O&g@*>RbHUD?u(YB$V5zqK$*;}Ql#b(MRBBL*-@MV zDUu;E496qX1JFQF$a8uplqOwz<2#N<#l2|%!P9;3yE`A9|K7~hE1D$jDGGdUybJB} zkK*g8kvwmS+E^*ba7mI3woIGsc72eEhf3LS8Olj{sjDS8{VcuV{rA7L3DS7z5AMs) zcL((R_rAq@^^8(3s@!$oylpO-;&^ao!jPn$29j(#f?%if5fX)zQDo{VbkU5>up0?F z{p7hL>*za_85i&SlZWh&dE}!X&d;BH-aBImNE0{SHxUv!L}^!E0Q=OWjJphYx-ygS zO(W$rm`+AL`)<g~yfjrZM391Owq(O=>Ge=~myQIB7OOo`YlIow5KCEzDs6LQn=LiVy_lWc&A9eNWu_Q?2WB2?{t|!TJC2U^O7KFKR6L&zGKv&eDn?@4yfTJ$cI`#x< zJoLdk^NyLpmz-%ZeG)~EeIh4Y0b7NM^Q8A!G8Wj6g8k!A@OY#)=%Bdo;m>;Ack%3~ z!g(M)=4hb$uGk=@r4Gqcv_`bD{Qoj}*my}v&^$mD>IndSs?V2VBI9Jde7jJa*R5sL zXq}>WKKQ9)Q8;qd5aa^tP|r4xN%JtAQlO`!{NqQzdOQmkiRk|Uq0_$ZC=j?{00000 LNkvXXu0mjf;h|$Z literal 0 HcmV?d00001 diff --git a/src/image/rua/7.png b/src/image/rua/7.png new file mode 100644 index 0000000000000000000000000000000000000000..f20902fc1741d53efa817700ec72b6a15c05175c GIT binary patch literal 5546 zcmV;b6;-+%H000$nNklS8liCBa=1Tls^y6d}t@P;PpSc$RH04x}2V4S8@Ycy=R3~n@{ zj+B@gwd6vRqpk}P>99}rAfzPAxIU~CWh0_iSk%RFO#ObJOKB@$B2E7{g4#P2F zR8*1-zCJD^YpM@JfO{^4uxNonXwX4I2U$itQABsY<;PAeQI;4cf(knTA~XpaK6Rw+ zgWTuZfO!BpfF@`a%n(8aDfOr|O%hFXp}m%kXl-Mi-uQiQIT2(9|ME9~n)^H<*B}e# z*$MshSA~$`gFNWEBtw7;S3-Ee2Z@ywmyoH_x!&#;cJs~ec-J)}sU`<9Kp5;+ShE9P zHqbsbrrXXNaJlZbk+DH3$NHKp3HkTUlxm%-Pa=|AH1b1>+$suTR#)1SI#v+v-a z|N5D{(Twdt%Tr&)hE$c1MI`y4#}eZUgHBp9+y*X_zB&g(NAj|)_`PA+U^^s8l7!y& zlkdH%(!&x1btM2v7|2DWfVf4ZR3!xcU<`FR7g{aRgO zJd|*~qnNTmpY&bha5e&QHEd7Ktq{ZRdP;g=7d_FCK;4HA=tKI^{fQ9RzZHg7jR|w^ zpyLS_)dPY=B?+3wm6rROq5u0298#hv=KfqjdOrInPadlT%@9*Y$THp*+KPJg8F{xJ zrMAV83`>T#D;~R{?E;QPYOEy80Z6jyi~9)qBVeNDsKet_Z!^STP_-J;gIpCpB7AmO zJ4_gO`N+koa|MwWZ5M2xj;&Y)RQsR1zOAw)PFqoXLg*7_J#CD-4hw|KxRAQ(^ z?ZIZd-qsA1$0cx|^i)a86rA&>BE`LC`!@ZA<`@XZDc3ci60?j6g6fL$5to`2CdBEx zuUzlLN>9yIJ8mg;i&hlf_KQ%(uuI9us%>trL0X`8Qgb~R7E*GdtHKb6kSm2eW^ItJVF9jI*eqb*@zlpoy#N{*vp|Z_PP|L z>5v+Y=F~ZWI%#`LUZaAGV|(t}IdLwgNY>JtW_0F#_g5yTGBG-4rd8Ua z^%T9jC{f|EsIF6KjlBSRzLDovmB>@u?;lLJONZ2IG^uuFpT=9;wthDo(Vlv85<^Pd z?^8dHxkP)ZZz%%ZzFi2}t=41?Bo7XkLBUB?$yrL3$r^hVxa%ikPY{4~XY4b?ct{aR zA*JKH-78arg%X3?aU^^*&v@VkLPR!5DH{$cY&LC)wtMNAkL{lx4r#Yhv-fP8hf$L$ zcug3ww7CSy_s-+BN=pbwPK?i<$l{Z@!kCkI!zNmFsW}UKMR@WcE#?UvBnhjN?m^c( zz$o*BJ_Tzr8|Ns=s6#nzQZQ2{!#=f|6XJMa)?$0Vz&+OxBG)&k^XKAtjn$i#nlPli z(OgJQWnv^%s7!T<*_et1o1kMQ)nz;{4R%+3?TlT4edu+1l(zS0+9W2vH*7}K>rZmn zqQQU$QAFMSHf?P0*g7CypOchm00O0NITlhu8YD~9p{P6|r#LAjsYN;c(Al3WC8shm zlGjxhpln%b7)&a|`pnwNyuc#nA=c0<)#UQ(#Jv%&L_dopj6gm8hM?Bb* z<=e2X+*>CLvZyCoizd#1+)K(O7G|rgyOWB8k(s>dc|yj^%Mp8F_)#$Sl=UnrLWT^y zCc;O~zy0s?^bKEgn=O6q7GX~j3X;;!rI|ZG5F7?Q0<|j{4bm~umTA*y(rtI%IdgCD z_s>0(>qI#>#Z=D838DB>P|FOxcwk~{Tu%(7G;756CF%5Lh!Kdf@AP|Cg+2e33#F0( zVDPH~B&`A=NK~TOD%bXiS0`R$v{gtL9yHj=^H2P-l^UMLV(^h1$4T2x-Y=74Bmixu zCW{_4qZSh&r7ZdKx;!t{`t6Lk$Uag)2tJ95?z$>WBterQWt9OJ3G&_VlIxz!10l9Y z(C_uAz4sEIffW0Dj2Ah$(&JAUHRyG(J3V!8@cBP~Di?degqZ9_ee6w%^rV>j+Q@{` z3rLR&N*=WLXTm2;TD?VS`!Y)k*C#2xaPfIoVVaOt;Swj(=h~imk}3B=t$n3G;!-;Y z^P~r8?A%1}zVCxpVy3LBCSrc7oVurs6e?NhR}fNMq|RbgKIlxTFR?4D*aiW}z(7L% zeDfXKboP;_R$AD4*AIMqu1N$bQrl?Cm&DALN3?(82o(Oi&2P9~1F zCy*9Bd#5D{`S%z4S0%kw2>;c$epgP88e~ZVNit{Jd&x=#r;yP9h6VnIO7;H)q6)FJU3#4V(I#qcFPlgQnRKDqm@S$h_E`TKI ziK}4WsA0I*a18MI>dTj?lNMw4v0uKQC;T;dN=2f>bb63vrBoqhn9aJ=sBf}F_|=po z*U99uVfN`@cHA5#`~mtwOpR89nn^KFm}l&vs;(6oKK$m>e-(W1Hx_dgd~dCSAwdWk z4b1L1%C69h7cbFGr?%<$A9^sit3X1KJ4@FoL}h3?>n)4g3o==!S2KHA$b!_kD4W#_ zAxCLDjtX!pAU)suhBsIT0R(Z_XTQx_U_D-Et?;T_Ptgk({*!Zu~3f*RH;5M98+ z64aSl0@yU74r3~M`aAFXrpo=EG(f$b74L1>q5XZbjtwLS6U{>>{FSLK8;0q2t%?gd zYqBws9`@iumYTd7bJ>bo9Nr(RxfMbdZ~*XRK@EVE!%Qwu3gEqc{oUWfwnn5zCYZr< zPknM~J;s|(dW7&v7#x5w8dEl?St*h5Om7_U%%9984Bkt--L_BIYwtWg6EeRMaO5en zi{RTj0Wv@e)?^?xus3Tv+Z^hL+l)C4!sEM}HCAgoJ3B1$_yA8nbnnS}x7QJ1h8S=1 zwJB4b*sZUZO(a#u{dDz2Vgfbe&&-D-0aWB=VYTn3xUf?o2Wk!EG}dpXt+h3Z>kVqZ zO!T`C{=yAKPVn3xemo~nlAO+bZz}p^rLke2dO6N~q%ML=7RTSPgg9xivZ@J8EtVPk zBgdoG9vyUVq5FU1W7q#newY}AD(j8D;kQvzhn#u4yCnHSh?jt-CP@As$V*H>6B#o4 z???v9WtAo?cIloEeDwN!$BuFQM;~23v$rDBf3P{2l4uCim?9<*};V?k`A=HDw;m>^d(Gy8r@XW^_ z%{i4u@@%Udo7fhs7pW^DpoQeTpw4?tc$1N-PgUSjNOm6z+^Y%CjoOs_03kLr*SJ5B zr_!E$QUqrLq=_0tNydiV`r0+>w!z9{tdi#K04hByBe#Ti2l- zG92;r=`6z;xQ>BuGm+PHB4o2leAGq9t< zfQI~5iP6mUDaoiHnYMkSK^swIRh}en5KWH7d2koq^iF|fjEkP=)5ZD=PbfVnrWDEuazQ#5t44FjKZ8qzy@)B~!Oed@p zZ=STC-pu|M-e6U?(uUn)B0)AHvDfCg)loVU!5{qA`5b?Uvry7Hdn%BimRb{$FQDtn z24AC0pSzHGhzt21{Pbc$Nd{8eC{^ckBJ6$|H8-;k0)nRIJ~%QhGm+&aM-$(JWQmRA zUCU-Kj%;f#kuWw3rV>W`GBmSNelK0-&oYh;6Cc2}FI= zjLoVUSDV+5y4^|CViZmhhijU|OeUvBW$`c6jt5T7hdiDs_O=APr@xR=5Fhg-*CdL^ zUHbH6zn;JS+^-ypoZ$SuXLFDMg2*h^-2R%|Y#tY`QMkoXU0W^*+s`rxx2#$vBcY-W z#X!5NRFIS`vgt%_NT4OlGbM;xEnXjz(32#-XKFjUoi`bX^kGvKY}H}rKm4d@QXnmt z+igCE1o5@RtbHWQt$|2?d*e0QO%6)ixuh|XbcH&!#S%(NWumkcC<3Ie%wCaF$@*T| zBG~e5m|cS;!P#(#lL<2rZERQ-SL0>&jMj|pIt+pb-u)xFtZm39A6c}~$39@t-F&Yy zNMB`riu#m?1VHo{?x-(dscoJv$!E9l9gPHPSdu*0SlghD_4Q&^mHgo%I0KvYnpcX% zIe6!}2Ue1r5Ce7LOaH+ugBY-V&%n8ZDn$D7ynN*9eth?#Efd@)&L2an5{N=%q2C!( zoDVs+Md|c0wqj7aH7Ti1ao)Ff3Tn4wavfc}#$=@hS!~(H8)*o+YmRe6uAB9dwgw3B_)uNAX4gZ zS?K$!^a1G>P^H7O7-X4+02scYx`g$86Z6sF-w8P?X-c3y3lsB3WONgIRs|)_HcP?h5#gCGMdPH(RjDr zun3mwK&~O@*oj#dn#iiqWX)51KKSgKz-Kq9M17Kx9C_)2cx;*=xYMHAL^6nz@{6{Z z@ANxe4&m%0Am%uWJs&qHgx++vWM8vsa91?v1L9SXO$0>kYE^olV zBsXr>c(N)x6*O=Sv4UkI0mqj>wgi01;IdQ8M~cQGlIA%uK9aOFt+%+NCzg@+ZUOyWlf@1cj+-X5ybf5?$jd3vyJ9! z;ICY}oU~_bQxSFE_Ws>@IC1}=^sxBAJwIwgOuh}YRcwmu}{20%wZt;&v<OqLEg5ps-y^B sA?A>H_`UDU@iHHISIjE*WCld^e?vYui#AA6!2kdN07*qoM6N<$f}#YB-+%H000$nNklS8liCBa=1Tls^y6d}t@P;PpSc$RH04x}2V4S8@Ycy=R3~n@{ zj+B@gwd6vRqpk}P>99}rAfzPAxIU~CWh0_iSk%RFO#ObJOKB@$B2E7{g4#P2F zR8*1-zCJD^YpM@JfO{^4uxNonXwX4I2U$itQABsY<;PAeQI;4cf(knTA~XpaK6Rw+ zgWTuZfO!BpfF@`a%n(8aDfOr|O%hFXp}m%kXl-Mi-uQiQIT2(9|ME9~n)^H<*B}e# z*$MshSA~$`gFNWEBtw7;S3-Ee2Z@ywmyoH_x!&#;cJs~ec-J)}sU`<9Kp5;+ShE9P zHqbsbrrXXNaJlZbk+DH3$NHKp3HkTUlxm%-Pa=|AH1b1>+$suTR#)1SI#v+v-a z|N5D{(Twdt%Tr&)hE$c1MI`y4#}eZUgHBp9+y*X_zB&g(NAj|)_`PA+U^^s8l7!y& zlkdH%(!&x1btM2v7|2DWfVf4ZR3!xcU<`FR7g{aRgO zJd|*~qnNTmpY&bha5e&QHEd7Ktq{ZRdP;g=7d_FCK;4HA=tKI^{fQ9RzZHg7jR|w^ zpyLS_)dPY=B?+3wm6rROq5u0298#hv=KfqjdOrInPadlT%@9*Y$THp*+KPJg8F{xJ zrMAV83`>T#D;~R{?E;QPYOEy80Z6jyi~9)qBVeNDsKet_Z!^STP_-J;gIpCpB7AmO zJ4_gO`N+koa|MwWZ5M2xj;&Y)RQsR1zOAw)PFqoXLg*7_J#CD-4hw|KxRAQ(^ z?ZIZd-qsA1$0cx|^i)a86rA&>BE`LC`!@ZA<`@XZDc3ci60?j6g6fL$5to`2CdBEx zuUzlLN>9yIJ8mg;i&hlf_KQ%(uuI9us%>trL0X`8Qgb~R7E*GdtHKb6kSm2eW^ItJVF9jI*eqb*@zlpoy#N{*vp|Z_PP|L z>5v+Y=F~ZWI%#`LUZaAGV|(t}IdLwgNY>JtW_0F#_g5yTGBG-4rd8Ua z^%T9jC{f|EsIF6KjlBSRzLDovmB>@u?;lLJONZ2IG^uuFpT=9;wthDo(Vlv85<^Pd z?^8dHxkP)ZZz%%ZzFi2}t=41?Bo7XkLBUB?$yrL3$r^hVxa%ikPY{4~XY4b?ct{aR zA*JKH-78arg%X3?aU^^*&v@VkLPR!5DH{$cY&LC)wtMNAkL{lx4r#Yhv-fP8hf$L$ zcug3ww7CSy_s-+BN=pbwPK?i<$l{Z@!kCkI!zNmFsW}UKMR@WcE#?UvBnhjN?m^c( zz$o*BJ_Tzr8|Ns=s6#nzQZQ2{!#=f|6XJMa)?$0Vz&+OxBG)&k^XKAtjn$i#nlPli z(OgJQWnv^%s7!T<*_et1o1kMQ)nz;{4R%+3?TlT4edu+1l(zS0+9W2vH*7}K>rZmn zqQQU$QAFMSHf?P0*g7CypOchm00O0NITlhu8YD~9p{P6|r#LAjsYN;c(Al3WC8shm zlGjxhpln%b7)&a|`pnwNyuc#nA=c0<)#UQ(#Jv%&L_dopj6gm8hM?Bb* z<=e2X+*>CLvZyCoizd#1+)K(O7G|rgyOWB8k(s>dc|yj^%Mp8F_)#$Sl=UnrLWT^y zCc;O~zy0s?^bKEgn=O6q7GX~j3X;;!rI|ZG5F7?Q0<|j{4bm~umTA*y(rtI%IdgCD z_s>0(>qI#>#Z=D838DB>P|FOxcwk~{Tu%(7G;756CF%5Lh!Kdf@AP|Cg+2e33#F0( zVDPH~B&`A=NK~TOD%bXiS0`R$v{gtL9yHj=^H2P-l^UMLV(^h1$4T2x-Y=74Bmixu zCW{_4qZSh&r7ZdKx;!t{`t6Lk$Uag)2tJ95?z$>WBterQWt9OJ3G&_VlIxz!10l9Y z(C_uAz4sEIffW0Dj2Ah$(&JAUHRyG(J3V!8@cBP~Di?degqZ9_ee6w%^rV>j+Q@{` z3rLR&N*=WLXTm2;TD?VS`!Y)k*C#2xaPfIoVVaOt;Swj(=h~imk}3B=t$n3G;!-;Y z^P~r8?A%1}zVCxpVy3LBCSrc7oVurs6e?NhR}fNMq|RbgKIlxTFR?4D*aiW}z(7L% zeDfXKboP;_R$AD4*AIMqu1N$bQrl?Cm&DALN3?(82o(Oi&2P9~1F zCy*9Bd#5D{`S%z4S0%kw2>;c$epgP88e~ZVNit{Jd&x=#r;yP9h6VnIO7;H)q6)FJU3#4V(I#qcFPlgQnRKDqm@S$h_E`TKI ziK}4WsA0I*a18MI>dTj?lNMw4v0uKQC;T;dN=2f>bb63vrBoqhn9aJ=sBf}F_|=po z*U99uVfN`@cHA5#`~mtwOpR89nn^KFm}l&vs;(6oKK$m>e-(W1Hx_dgd~dCSAwdWk z4b1L1%C69h7cbFGr?%<$A9^sit3X1KJ4@FoL}h3?>n)4g3o==!S2KHA$b!_kD4W#_ zAxCLDjtX!pAU)suhBsIT0R(Z_XTQx_U_D-Et?;T_Ptgk({*!Zu~3f*RH;5M98+ z64aSl0@yU74r3~M`aAFXrpo=EG(f$b74L1>q5XZbjtwLS6U{>>{FSLK8;0q2t%?gd zYqBws9`@iumYTd7bJ>bo9Nr(RxfMbdZ~*XRK@EVE!%Qwu3gEqc{oUWfwnn5zCYZr< zPknM~J;s|(dW7&v7#x5w8dEl?St*h5Om7_U%%9984Bkt--L_BIYwtWg6EeRMaO5en zi{RTj0Wv@e)?^?xus3Tv+Z^hL+l)C4!sEM}HCAgoJ3B1$_yA8nbnnS}x7QJ1h8S=1 zwJB4b*sZUZO(a#u{dDz2Vgfbe&&-D-0aWB=VYTn3xUf?o2Wk!EG}dpXt+h3Z>kVqZ zO!T`C{=yAKPVn3xemo~nlAO+bZz}p^rLke2dO6N~q%ML=7RTSPgg9xivZ@J8EtVPk zBgdoG9vyUVq5FU1W7q#newY}AD(j8D;kQvzhn#u4yCnHSh?jt-CP@As$V*H>6B#o4 z???v9WtAo?cIloEeDwN!$BuFQM;~23v$rDBf3P{2l4uCim?9<*};V?k`A=HDw;m>^d(Gy8r@XW^_ z%{i4u@@%Udo7fhs7pW^DpoQeTpw4?tc$1N-PgUSjNOm6z+^Y%CjoOs_03kLr*SJ5B zr_!E$QUqrLq=_0tNydiV`r0+>w!z9{tdi#K04hByBe#Ti2l- zG92;r=`6z;xQ>BuGm+PHB4o2leAGq9t< zfQI~5iP6mUDaoiHnYMkSK^swIRh}en5KWH7d2koq^iF|fjEkP=)5ZD=PbfVnrWDEuazQ#5t44FjKZ8qzy@)B~!Oed@p zZ=STC-pu|M-e6U?(uUn)B0)AHvDfCg)loVU!5{qA`5b?Uvry7Hdn%BimRb{$FQDtn z24AC0pSzHGhzt21{Pbc$Nd{8eC{^ckBJ6$|H8-;k0)nRIJ~%QhGm+&aM-$(JWQmRA zUCU-Kj%;f#kuWw3rV>W`GBmSNelK0-&oYh;6Cc2}FI= zjLoVUSDV+5y4^|CViZmhhijU|OeUvBW$`c6jt5T7hdiDs_O=APr@xR=5Fhg-*CdL^ zUHbH6zn;JS+^-ypoZ$SuXLFDMg2*h^-2R%|Y#tY`QMkoXU0W^*+s`rxx2#$vBcY-W z#X!5NRFIS`vgt%_NT4OlGbM;xEnXjz(32#-XKFjUoi`bX^kGvKY}H}rKm4d@QXnmt z+igCE1o5@RtbHWQt$|2?d*e0QO%6)ixuh|XbcH&!#S%(NWumkcC<3Ie%wCaF$@*T| zBG~e5m|cS;!P#(#lL<2rZERQ-SL0>&jMj|pIt+pb-u)xFtZm39A6c}~$39@t-F&Yy zNMB`riu#m?1VHo{?x-(dscoJv$!E9l9gPHPSdu*0SlghD_4Q&^mHgo%I0KvYnpcX% zIe6!}2Ue1r5Ce7LOaH+ugBY-V&%n8ZDn$D7ynN*9eth?#Efd@)&L2an5{N=%q2C!( zoDVs+Md|c0wqj7aH7Ti1ao)Ff3Tn4wavfc}#$=@hS!~(H8)*o+YmRe6uAB9dwgw3B_)uNAX4gZ zS?K$!^a1G>P^H7O7-X4+02scYx`g$86Z6sF-w8P?X-c3y3lsB3WONgIRs|)_HcP?h5#gCGMdPH(RjDr zun3mwK&~O@*oj#dn#iiqWX)51KKSgKz-Kq9M17Kx9C_)2cx;*=xYMHAL^6nz@{6{Z z@ANxe4&m%0Am%uWJs&qHgx++vWM8vsa91?v1L9SXO$0>kYE^olV zBsXr>c(N)x6*O=Sv4UkI0mqj>wgi01;IdQ8M~cQGlIA%uK9aOFt+%+NCzg@+ZUOyWlf@1cj+-X5ybf5?$jd3vyJ9! z;ICY}oU~_bQxSFE_Ws>@IC1}=^sxBAJwIwgOuh}YRcwmu}{20%wZt;&v<OqLEg5ps-y^B sA?A>H_`UDU@iHHISIjE*WCld^e?vYui#AA6!2kdN07*qoM6N<$f}#YBW;KT2z8FA?ZxZndo0TQhi7hEkx zUGrJkC#q*nTNKT;_y6R_-Z3OxDgoBq7_HXelhJ6As>~^hGrl)l)YK0eYlveA&OySg zt|>`EO9EP4+e=eB-pwERiMK5w4@7{~cBSd$(QJS!V9U7xuKNhc5FCqW;QOH=N)aRH zI2lf-bd;w2(A#0A>`VZIu5CCi3Gj)Y0WR=zE?Q4SElu}{kf6yRMF6CqCM#r#4962D z2t>X5v7de91Z_=#H*{R%K&eC1ebPmMtN9jWnI-^Rk)eUs=X^XZRtFYQ*X6mZnmro{ zSR1n|TTg2MUq{5Yv!DgO+|c%_3sm>G>r?8Q;xOd)!Vo8>j2@!n?<4>Ybvzo;!C=r_ z5a+r@__(XAv;S7BeN#gLw@!4QQq2+`wyr1)BX0RVH8}67F+m8(c>jk#e(5B%2oPO(}eq6O!JkIMT@)It;LX4h7tA5bMr8wq9`ay z6269W$YnV3o<0GH+X5-GMBD%S6%9Us7LAo-dp<4NCd3>EWo|*P4LP>m0sOkINk#|I zi@KtGHn&8S;}K1#Q*J@XSHJxG51d5xHgy275=y!RNfL$je$0wPcN24O@&RWcE-;5z=j_LVO^5D6Oza5GfDsAm-9 z7vAr{O!$jG`h)u>q2&X%6*sfJpXW)>0OME%d}w&pTlyRU4}bu4tMNPw+ay&%K+$4B zy~v{&VaQr7V^+pY6%d=0e0hj=2xYcwc^L%QLr$y1&@D53ml!{{7YFk7YVl=Sm7lt8^dwtQPVYIZ) z`nN&@dcSYLcV=3WCiJ0C{`}S?T>65HFB;NXugeP}wb5>|+mN#K11#WIRY|?`Gn!vJ z^!CGj-OgqWxB}p8R=0rF{qIIGQ9ZZUAVpPD62&yTcZd4VK4+gzD7Ae+YB8G7-~ZX~ zE`IE%e_<;UE_DX1t8$Vr(NZxzOpn$0x@H?3IaxY17Qp5C1p`t~D+<$yvOK3e%WOZK z3o#%G_W+(q6vYoPIPFt88oz)_)Clj+*D&mN$%4^T@k?Cke-&xFPdOo2rj;St7nhsAWJ$lCW$MwOY zrjdD1^f``tEs_|xC}x7tPx_ozbKA=J`gi!bIHP9{_nGA5dPd_c{G(f$u)kDx?WG_S!P(lJlafS{oRl8 z*=m47`Gi4-xGfn%(&>~*5_0T)XtjCndXm!JV%lo?Jw|u9y`9hK@bHKZ%Mn5yCMPH} z>Ydltw1JF+JZF=Xo5T&HR4Qb4CHU9B{pwCm7z9+Mf4a6zj#IrPU7s=iCAOEC9wx_) zJnYz0McVL;Mzo+ezjNFB9%pAm21~cD==)vbK6iTO9^Jh0JVk@&*bHG7z`VgnK;U;Y z8IUa7v*z>TpZ)cfS+Fw!I-zpcLDqtAk}M=x0G=~V>2I`umgg&=ixVW{Od&8C6QlV6 z3BVjb_pGlyrv2_0 zxphUZqt(yov3vs4lussX(vHjAk|4@q-v{3sR5m2Ww~fvNdhLs!TfF+I&s!2U7UNvt zXJ)I2JvX7GZ>37x`dXD2qA;Q)>~l#$5+c{e3)sWqkpDsJ1$@YXF(Cq$fUH5+;Nw_} z@4k;HEigau4-9^PnOVCLl$?VUgt&;>_?xnf7WYnDeb*8IEO~Fvq78Zrc;^AB-*?sF znFwQoP>VqnQ)$gN+OGxL4wIw*-M;n4%Gf>)&AfZadc z%Pa|!r)Y%&8Hb}0{m0+@*5bV%{N*6@WvE>X;2LlZyt}a7>Z-seRs9tEkFYbImDU8o z*6SDE&-N_=0+fzU1ZV*IigKc_IF3|DI|t^tOrE2otfHf%BQ|eH-f#?gNj=*?ZpM-l z1aX8GaUK97$T;0b(@O?jz=!GNXM>Ce(Tu+hv*6Ynr}W;f@&LX2K-u=t)Ya`$pyOC3;m2)^<4KUs9`pAoZi!Qi)}RafJs(ipflu@~9J6e%g|axh~5$vmKVw)8178%{@a ze(^4OE05^;LA$_A zkYwwI1k8ky!tUDM9xK{Q2U7~3J*LpraNmxDc;(8ft+(|W6X(aqy$kpSoVJh~g;bfv z5Incf&n~RTOa%kbnQ6IhNHmSD-kfG^SJ*Z2C zbDKVcxKE>tg3r?^=0$V{Hj4P32)G$w0VwRV;`Fc}6!*E+!Gf%yMQ#v+x>7ag84(4I zBJB@|Nk9&xg$sfu(eNIQ3kqG(eXBoRg1#$}jd=zd5A7N8G9YR;(^jpg=lThNlq8LL zf`e8|egGP4xiYgB@zU%>YApfz1wvd|_buy+SE%rQ*Mb=lK#%)epOFcH@n9OuENy0K znl$H8NO2reDTLO|Qs~MWv`HiZzQztdV&7~kJSmzm8a|10nM8fJi>;WFG|jqW`HtNR z`dFeIXfw*pr$LYQ(u_5GJU+LJ86wCB`YX{^Ggd*(I}1>;@-qMufMceW^>QZ!u4~1B zcH{XTp6@M}Jg1Y!FJUDMGG8p$i>GSF`asteTlpThhzMUJ)z=mYCcyBjI7o<@i0-fw zf-N8|z@hDUS=e~jy=1gV zW`SN& z_$-c%2dFy2X&h%o2_VdkNIl_O+UC!d;Tx5Hc1B z&8K9m|K=U}o-;EG%VF9InNez%P*fI(YL)H6`6B*@hU@YPO4&1N@(j#|?|b3pRRToA z&&MM#2Me*WiU83XnU?q z5s9G@PxIKu)U-f1$1)oLK&gl!GY))1rfje^2e@XA8Q`k6=1(tYlGfy+0TSRsNiYNT zI)hHed<#I(^#3vI$F@?dM1V)Kh}E;PxpkJ$Y}w>S)~Db2+CSPU8H&c^XPfCgqbaXY zH8!(lNn!VlozI6u&L;8k&8a#~s{F@c12+=5oeeFL!vO2Bitn#E{YSd^TyB6>+d)(;;`wyGY3dpx?Ohd<%F> z06S9FX|>%h3~lITL(6)pVE|n;aXgu@!xp;i{cgkV4qb%fPj9I z7qo92vhQM1$1(jK~erdl~%MJr4m=;R|wF+wt&u- zCdJxSGrcP{&GEsKFYw1J;CUKj7qMf4gal~dfL6&6pHLVw3XfeDf?31OY!PjThKFg{ zR98(AY?M!I!HvReR85wPE&?cubMf$w)n;5D8tvAgyWoom_)@z5(qI4c#(hC;C!9|k z&1Pq(rlQzbN+z4pDb82I}_wS#+VpV3eO_FF4kp>oI=bdrJ+)F^x5hz(IETc zb}a(F77+2ZfB)9byQ4#~que@+Tqoz|rHzdh@WsiBxk2nLzzetPO=J6-_SiMv}u!0uWrzS-em zw~^3-X+%OuHt(}3o zOwhH2E2f6Ey5NLGVx4-V92{%ygy#ksARAjOeJX1*wCKH=vfM~YqlZI3a6T>e?Phb= zi?zmYyFp7t)|np`=vuyM>JHPPlN{G{(3(g@u8$oX?6b?{ z*)r%8ZNoS1lG8gVt^#x|VUv!ZH_?T1oN$0T0>L`waoVGL+OFAK?Kj~2fEUpTj&Fy9 zD_wTEOMF0YdLH2a*PHnx`>&>i3~&Sxn`mQTKw5F4I8WZ9i^}6vJu$ark6l@$E8A$O zZ~qS|;Pn`rwEn6!y-R}M`?b$504`E4facXO3%qg~Kkpk3K? z-<8J&bS-8Tp$%#a^c5%Dh|kn;Xh`jTZd9@^337M3>0NG+gBM?=@$J{v&IVT=N6@u| z8dw2UG+oTgI`Fl|ZvtQ2d!KpG!0Wx7at`oG5z-}(JLp<=T9RDnV72(Pd|gQB1706@ z0WR0yPJp}OB|u8G?wY0+*VeBCUBm^yOXFz^Eq|1e%VkQ~mFhFVp1(x$MKzm3%58w( zW`91tgMb$aeNhWavpTic$3DC6`#Y>%Y&<)YP!a@}92Y>HyEJgQpE zqn6+!KlH8#`j2(&VorR5XYmIXzx|cJdZK_A=>fPdO?9v9`|j~BB>^qa_$L*7Nbvp7 zr&s^K(0Brz>$bA>-w9uqymIpgpMtOCq5m&T$bgPNp8Nb4|M)5JjyyC1o`SxeTnYgI zTbBQJ*%kIw9*}@1DPek8vJ(MMo#*AtS^}N|{_v$mz*E4lScvHV0ct*Ur<&9#zyJUM M07*qoM6N<$f<+VFbN~PV literal 0 HcmV?d00001 diff --git a/src/music/cloud_music/cloud_music.py b/src/music/cloud_music/cloud_music.py index fa8ce98..c6c4f19 100644 --- a/src/music/cloud_music/cloud_music.py +++ b/src/music/cloud_music/cloud_music.py @@ -174,7 +174,6 @@ def netease_music_download(song_id,song_name,singer,session): data = requests.get(url, stream=True) file_path = os.path.join(save_path, f"{song_name}-{singer}.mp3") file_name = os.path.basename(f"{song_name}-{singer}.mp3") - print(file_path) with open(file_path, "wb") as f: f.write(data.content) if data.status_code == 200: diff --git a/src/qq_plugins/fortune.py b/src/qq_plugins/fortune.py index be03cf1..9493845 100644 --- a/src/qq_plugins/fortune.py +++ b/src/qq_plugins/fortune.py @@ -36,7 +36,6 @@ async def get_today_fortune(message: MessageEvent): msg = Message([ MessageSegment.file_image(Path(local_image_path)), - # MessageSegment.image(url), MessageSegment.text(content), ]) await fortune_by_sqlite.finish(msg) diff --git a/src/qq_plugins/touch.py b/src/qq_plugins/touch.py index 322473e..698f8fd 100644 --- a/src/qq_plugins/touch.py +++ b/src/qq_plugins/touch.py @@ -1,8 +1,9 @@ +from pathlib import Path from nonebot.rule import to_me from nonebot.plugin import on_command -from nonebot.adapters.qq import MessageEvent - +from nonebot.adapters.qq import Message,MessageEvent,MessageSegment from src.my_sqlite.touch_by_sqlite import touch_count, QrTouchLog, insert_touch_log, touch +from src.image.get_image import download_qq_image_by_account,qq_image_delete,rua to = on_command("摸摸头",rule=to_me(),priority=10,block=True) @@ -10,27 +11,27 @@ to = on_command("摸摸头",rule=to_me(),priority=10,block=True) async def handle_touch(event: MessageEvent): member_openid = event.get_user_id() - # 判断触摸次数 - if touch_count(member_openid) > 10: - await to.finish("你已经摸了太多次了,请休息一下吧!") - elif touch_count(member_openid) > 5: + num = touch_count(member_openid) + q = QrTouchLog() + q.user_id = member_openid + if num > 10 : + await to.finish("你今天已经摸了太多次了,请明天再吧!") + elif num > 5: result = touch(1) - # 记录触摸次数 - q = QrTouchLog() - q.touch_status = 0 + q.touch_status = 1 q.reply_touch_content = result.reply_touch_content - q.user_id = member_openid - insert_touch_log(q) - await to.finish(result.reply_touch_content) else: result = touch(0) - # 记录触摸次数 - q = QrTouchLog() - q.touch_status = 0 + q.touch_status = 1 q.reply_touch_content = result.reply_touch_content - q.user_id = member_openid - insert_touch_log(q) - await to.finish(result.reply_touch_content) + insert_touch_log(q) + local_gif = rua(download_qq_image_by_account(None)).add_gif() + msg = Message([ + MessageSegment.file_image(Path(local_gif)), + MessageSegment.text(result.reply_touch_content), + ]) + qq_image_delete() + await to.finish(msg)