From b950ae8b763ccacd3cc55d5695d1c1951cbf313e Mon Sep 17 00:00:00 2001 From: Kakune55 Date: Thu, 11 Apr 2024 20:10:02 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BD=BF=E7=94=A8=E6=87=92=E5=8A=A0=E8=BD=BD?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E7=B3=BB=E7=BB=9F=E6=B6=88=E8=80=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- file.py | 3 ++ main.py | 12 ++++--- static/loading.gif | Bin 0 -> 65816 bytes templates/view.html | 86 +++++++++++++++++++++----------------------- 4 files changed, 51 insertions(+), 50 deletions(-) create mode 100644 static/loading.gif diff --git a/file.py b/file.py index 868c3d6..03cbaeb 100644 --- a/file.py +++ b/file.py @@ -59,6 +59,7 @@ def raedZip(bookid: str, index: int): # 读取图片数据 image_data = zip_ref.read(image_filename) + zip_ref.close() return image_data, image_filename except zipfile.BadZipFile: # 异常处理 @@ -74,6 +75,7 @@ def thumbnail(input,size=(400,800)): im.thumbnail(size) output_io = io.BytesIO() im.save(output_io,format='WEBP') + im.close() output_io.seek(0) return output_io @@ -83,6 +85,7 @@ def imageToWebP(input): im = im.convert('RGB') output_io = io.BytesIO() im.save(output_io,format='WEBP') + im.close() output_io.seek(0) return output_io diff --git a/main.py b/main.py index ef72ba0..7b01f3c 100644 --- a/main.py +++ b/main.py @@ -1,4 +1,4 @@ -import configparser, os +import configparser, gc import db, file from flask import * @@ -68,16 +68,17 @@ def img(bookid, index): # 图片接口 return abort(404) # 设置响应类型为图片 data, filename = file.raedZip(bookid,index) + if isinstance(data, str): + abort(404) if request.args.get("mini") == "yes": data = file.thumbnail(data) else: data = file.imageToWebP(data) - if isinstance(data, str): - abort(404) response = make_response(data) #读取文件 del data response.headers.set('Content-Type', 'image/Webp') response.headers.set('Content-Disposition', 'inline', filename=filename) + gc.collect() return response @@ -85,7 +86,10 @@ def img(bookid, index): # 图片接口 def book(bookid): # 接口 if request.cookies.get("islogin") is None: return abort(403) - return render_template("view.html",data = bookid) + data = db.searchByid(bookid) + if data == "": + return abort(404) + return render_template("view.html",id = bookid , index = range(1,data[0][3])) @app.route("/view/") diff --git a/static/loading.gif b/static/loading.gif new file mode 100644 index 0000000000000000000000000000000000000000..358e038eab9b6b09a9fd4904ccbb49880f1bb935 GIT binary patch literal 65816 zcmd?QS5%XWzpk4~5=cm)hn7N<-aC>Is(^-$ib@kv5rcptq9pWAsDh$~4%VQc*y$jG z1_Z=T5yVcL3Qi5@Ta!KAbN$y@Yp;Fw80TD^cMQlkAUDbdJn!@VoLn5uErJe#yg+dv z5P3~(vxB!6gU)m?)YXTALBN+*VK6B0sttUA{_Sn`|Mu{o1pMy<`8&|R1N%GhzakD7eiHTwUinzEq_8-Ch`{40-0)ZeQAtCu!q@<*zrKM$MWr;+hf`Wpw zvNDB2QB_q{Q&ZE>(AcnHgQljYmX?-|j*hObuAZKrfq{Xcp`o#{v6-2fxw*N8g@u)s zm5q(f#*G{8?CcyJ9bH^p+}zx@Y}w-J>FM=XyuH1Be0+TWir-)H|2td%%C>FWwr}4a z@K<*1*s*ix&cMLHprD|TkdWQGcklTt;o;%?_U(&^h=`1gWU*L>4jqb#iHVJkJ$(3Z ze0==VOd$(nKNgqs;bVPKi|~UbmPX2+qZAGwY5Eb`0&Y- zC$C<;nwpxLo16Rm`Sbkz{Nm!`^78VxZ{NOu|Gu)avbwtZKAh=JVQzF?cebq2zL$MX)xG&7MwWuh z)tU!I8j}VORRjdt-1? zHQy=?t**43{+8J^K^NigYL9>Q!ta5~=~NfP5?Blxep#FD{FAy?1(a~WA zMmh#sZ|xm-+^t4MG%$&d85sFb1Q2;{W`BY1(QTp-i-jU{mQQoE+FD!Jq25)b6#*U)J28%zX*BBXTY)9vwO|`7AZVtu*v% z1|`dQF^B-m`9>4lv$YZLT7;vVjjZ_0Nk$UlShK`b|0%@5#-_>YQ!?(VT+(qD<~x#; zeUFU4yfYU}G<`Yhhf0%0XcQK$3@Ydva z*@IZ`Hap6j%6$cH#-a10(CWK#=SA*UIrnDW`XY*@noXz&`w?RdoXN-M`TGv1rLmCK zbE>XG=^ML<&-@}Lx(2A3tt5H_%R9X02KL!90{M6oO~eQ4UMO;ckTStj^|~u|kWr3? zJ4=u(luDM*TGR8a)vKm<}rjK9xm zOU|4@l!%zK07@!7^(lBLN%!IK){#r0J|(w_F1HF<;Hu;X)M1BX6dQ>dPqmmww7jaeJw$0?^hF*d2~< z@MQ_96Piq91^d%cO^zI81O&Nj9SFA2c$hVkRP$U8p16|BoAGXmu1Lsgy2K7=;&)<-)BE0mGw(BfaX-NA#r0_>S zVWWmpw`vkT!#stow9rHkm=xLd9;75)fbd&5=nR{uN1+W;5MfRpVtq95v|*u3C`9C0 z6bZ93aq%5nUpq;o1CbG!j2#IC>t>XQ#DE~m<78ZphCTJmd^f7mtwK5t5CBFj-2vGP9G&Ns=3^ zoWZ)uLP*YtqNH{Py1AoHM942c?*_rKN%9Xi8WwARhC{RXE+hkijGEgw)l~hIu|qAm zlg#A?P`9g`|5%-ZwLX$8A$;zH=A672!)B%R?IhjVX4Ok~xDG?1uTC&<7T!EPsSLWb z&_vQ=JoRvR)F}r$U#?xBv);xI`9FUas-K!qcZZcfvzzebKhf1f6Zjk@LP$v?y3ztp z`4WREL|LnBsf|qO#d}{HaInT|mdo19#_#oXMN&fpMau0nhR~mGxEVuY-pbiWSano6 zjqDCinSd&n;9FDH&mb?Mbbn#l5xd*KwY$l^K`RYQ0kIQ1gcUmmBawD6ON! zYalgT_c5$IOz78&a%+~d$D=$2#h9d-=G_s@ivw-5rd#Q^OzbiWiA%Sn=Q%WESshl8 zBR=j4n1;+D867>iD?oow%DDXxzbK;!0^ge4H(st(NNba~c#r50>O|Z!@lL(Tu zVqBytZ=Nlr^JykqRWbKHjL&DT>Ky_*i5+Na0hiu*`LYz9586#7uLK{yNvBPJ?J$Z1pRLdDbZ_G->wQubs8EPn>cTrxk zXB({aI-RMzx=9W1x45$1rD(g?mV2|0o@moxHe8Mvdw!!Sr4<`%ASp83EN42HlJ|Bm z*w^q1uHiWM8kY2j>&8fY$3Qx^ppk|NJ1lof5^m%;pZ%OJ04s#E;Tw2#T$zxc{-8SJ z?3_wjXE2uuX(%Cevl5pUTaOiG1^YnlblDc)SUD>?FRd z$)bE7$urVC&ca>7$D;_bz+dMtyX1@0!QJghE#GZVqLhyZA(skHNEk?JlhxvAu0NL| z-%%ufRZ4`jqAxCnFcv{5A1#VNe{czBV}z6?DJe2Hk~HvbCI^p1!Rj68sco=21L92& zubFygO`6o3B^-;4Tx$kx2&CVU!Eb}gfD4IYe0HoUDtOwA(S*!qA}bw`DJ-OqDv~pS zaAm_>xUgstvSiU9dp;K3E|G}SBCw#?#pDm)2~3VQ4;LaGMJs05=VL&-)S$d83VxA$1dPws+5A?pf=8S`1vcBv9j$o`f< z8NA`81>^~OVrX)HZ#&^cJ#hogvMeN8P?98+V9~{(H?RR#)n9Mlioc*LQFM*$pY1QS!G35BCIVDg~$CHAA+Hv zHITM6z=Zz)3qAzi@=rqi8xQ~8>))vOKVJU^M%Zs+{3kR5#E3?t*I99$2>}!YI8a_* zUP(!bOeRyQRDc83)ztwATqi&P{{Z$gGBN`2&(zcuAi#g(pRKJejYgx>=>P{Z7z}%R zdj|&x00^C&oSdDV0W93KX_Kp~D*%V??(Um6Zw3&N$z*zXc&vlsZ%PCR5x_$L41Z(c zIuq{NwF_Xv;NakOEDQ?^1Hcf#LLhth?giiw$o{_qP~w3D2LMn!c<>;=ia?^Gq5xuy zj*ea@#v@0L96fpz;KpOejwK`{96x>>0La9|L^hiZU}REKQgU)K0F$YyscC6x08(aT zWMpP$W@Tk%XJ_Z+rT3knJV+AJz6DlRTADJdx}Ej@YiBmke~<>jYN zojQH`bVWr40HSBlo;`Q&9FNDVtgHl}w6?akzP`S(vGKx%3zsfkx^m?TpU=N~_3E{2 z*P5G~TUuJK{}q5*TmQ<r542 z=R=3=_psUhvQe*Z9)`SV*+2f}Wp|N=*Uq2j`fpk}a`2w%K4x|QY4a^g17`W8$E9j( zaQCP4fsd-46(a-64(_o$FeBuATFsxl)8KM#HsZ$8%ylLJb9y48e;Aj5FI999(ScAoRh)r67)Q%6*5X)V7ll^p_+J+A1WpPbMzHN_L4q z$y*&>T~aS8&b-sGR`qQ=`yfZ*spzr8AFsTcixbW&-YJ>Vn}Mt?=HX<6uI_qhbA8Zs zph@9&Zr8l;dBsKBlLYfzpb$E1P3&ZSC zqnFQhRa3PSXm5!}*$()W(?+^0zHK;V@#fkygg;WY2fs_fy@rQH)>PA`-aZMn7NBK1 zY-JhcXe;hS_ViV$Y<-m^Y%3b-twYcpG-HO zn)2dD>A;V45Cw5KY;R#D`s0Fq>)y9pEG;W&<%sA8&t#O=I6YPO*-z?8+j@J}8(Vov zhQOkBr~FW2V1KzE*l1$r;C{WD7n?0@CQb!Ai<|7dQnkQ&Ca&}6tl8F`r3Ui@;e7*r zpj~`zv|q3wR~oYu&5sA4IKG2V#tE9A*mc9ZXjgjGITp{8=v-XX+V(@C^2q|1(LXC{ zc5Hley&`&N{MG8c=jST!s;fMq?YZ?i!20-ds-Nhaw-(BF5vB-FGwH+0{@34kQDuBs z$DWDjt(L_Y&3~rO-VT46?uOg@egdf`R$?IN9Na${&;pXYx{pL9u4y>g;YQL4cX)UN zInYZ4QefdAuy7}i4?0uxmSB%hJkCV8W*Lq%f=@V%QKw*ms8q8zpZ> zHB@TY{0wnSxHfMuNI0m&7dyO-|IpJN&w%(al@-u$9vK0W`?@Jv#8wJ1Tb`hR4 z0cFioljJ^=I95YxTyGIbu@p@o`2b;B*PgT64VsV{Ri?U)Z!nQT!@Td`CA#71?W4#B zz4T={Xc(x5hxyYF80~t4R#hx5afcd z&+bx#c9bvs>Rm1x<|g)thC?Zx_(QDbdnS{$b6Zj_CKRfg!P)VxJ15M&OIejK9-1_n z@96A3v?wel)c9UCh zGHKvKh&fe6qYx#AIpvN;CX}F|(XOyFspN8PNaT?wH`Kk^>q)8Vh!>OzA%3rw8ba(X zQJ(Uw=>)IfE8O^HW?0`iuI__0H>_tZK ze3Dsy6gsV3!XR^yecX1ReLKtpcdqz`L-H0W5{^=MZl-SNIi!rYb>E7{7^}u&j@Bt6 z)7oyRsZn74D&hdaz{O+VlVY6bw7CqeeO4sdau2&-&uTNm5AW@{7<`0zL;M#8sh3$}vZ>rPknw%{*`rFmn_U#ts zh}R;)xyfi-%9I!@Jpn!r5gcfJE>_AAzK*+Z{g(kS>c@ z{dtHX8|uOndx*n4V`5(E8y<@?q;O<6JXM7*C=RKJt>UEo@HWu|V)+q6dBF}Fy6u@s zYa^0hfur1`FhyE7kyjOw-ax2$B2Jq3EbgE~nrw!{whLf-{RK4S~S}f(Q#SZoALF4w@ zZx^b*DM|YA&9fVCYeyIEzDL2?v6NeuA#J9#lf&X?m_9=>&ha6Nd!U*yPeoNGQs8l9 zPe$4*4^231BH=C033jxW%;puMGU$>K9d|R^UA_M8Tq_WhvX^sjt03T1s)R| zzPVL?m$?H!(2*RIRnO^}471e*x6j{p~udhlYj%7WX%Fbof zj_AMnd|m3UQ#zn_0Z@;Nivw7F9oK)e`u_t^2Phrj^M8T!-(2Dlx_ z%wGWj9?;qVz<>Ps@$1*GfY}D<9l&+~+W&>y|2Et|euFxI>+5d&zYFRD<-2jKKYuOB zY^kKht}Xsbo;&#JR^qa-`4-`|9z5>Ru;`D`}#0Oa9;vpV`3ZZB2|X<8mKf80mZ*o=>U9RDKD z(cZiNu&nXaf&B4pH`I8Q&W2Gl4Y{%lK6<7x)YNsA{g zymoWjqoE;g!UV53kc6Qr!Kt*CqZ78%Zcm?^gQl8?I9~<&is1gANDUWJ6SGjew-Jq} z%-6JMw%7?Po;(WDWin;Jy$u%cT|nE8zOWU}gwsIzFjCQk?K=hY^R|C9I=1Uv_z-&f zbh=H$DVXiZJVgAs$~3pmZw&JKz_8Rk!z@UvR!) z%)dOakIqvwP46K5OlCw1(?SQ=Z|3=Dy=4+YVmpT9SNm={oAhmW3KMW`4pL|AF~j zLrCze-Ynesec$@++iN!lc@g2nicM_9#g_RUAyh!Y}U`+90gNc_U}xy*B3kNK#nox!p~a%u_1#m*dS_= zvD>^5$4x=TQ#T-r`pIVsQlWI=a$K*)^(ahKMzX>tODB^^aLUlD8FQhml#a-u8b(~Q z*O)7b!9U5(xuasFM;8@C9BIi32r<5XyX^z5K_~SNbR&fBcw9rkDHyr{{YdiHS}Byd zJE9{tJM^-Csz9Y4R%iDi5H*V=bj3AO4qT^#usuGF*%zUTL;5|o5heLb6`K1lMKKO6 zf^(_41BWTHTa8a0;%2Tg(l<4sZJrzCg$sgZhXXSsU>XF+iX2Gjg%|ihb^P`@wu$J+ zHnbZ(Nu1ZDy9Vks=Rf5-jqr3En_t<6HK|0oO^N8SITEG#uB#2X1OrkV5_X6q53A0- zB7HZKB!*VoKJMR%CL3^ znF@qE>%T>F6Z+VeqPLT6?a2@?JgKDGLzYAuPVcT1360-c(V^Q$jfY>W78~FCnZ`@r z`jZYN;KW%mj%@i9Z^dilUu@mjP0u!KQ{OhY?i3DTl3UxgsM8k_UF-@;ZkiL*WY9*+ z@s{AVmv4b25*dig3_yj7cwD1`J87K&(ks-S1z`{yd5ruSzz}1{G=yip^)_K z;_gHBKNJ$(=%kqUw3gCkQ7OO|re^fi6BhH1bR8gL-D})zVlE(;8{1)Sj&)Z&FRG*+Vr@a0R}QUZq;;%RaiRwGD-~BI zF(!UoxcF{+q>8hB%j%23;*(@7YRhhKU zudBP76e2{I2H6JcHr&1U+}=XGgH)p>#TF#S;_)T@?@nmlp9KFBn#$m#WZUC%*{F}2 z_x!m584rh8P+a5?>M~aqD3khIF;?99!@B_W&AhjGpH=9%wAXr6G2b?>#p+$Fx+p znRy!*W-Cy|ta#mlZk9L)OM6r5ImhR^Oz8eQDm%(65js_&w}}C_t^(B;=DJM&+cp?H zp^6PFob)Mp8zQg8+l)#xAeh5eMfibpMAT%`xgU73UsLALT?!0 z>Y?NO0cXQ0QTeq_q&CAjOcP>r4o%+^%5a!8x9iN&pzb*~IlWJblwNnuUZI`Y^SrAa zD%#wJ_f~e<7+BC;!|+#ON%lv`73M4aEP-5^yE^xWP@5ae?#w*0FlQUi&dgq$maCc=>4%tc5F&Oy9DYgqtysg_~W z#3x8dU64;a89G{`7fPVO-(j!Q#Hdm#%PhS5e2`#5!IVH)Zrj(Z3O1yvXX51{9Px|S zcdW&1dl+jaZwMi>^mtR`H@*Z^l*HG-U{Rx3>34@9LnxItRk2w~x`xC#4zj&FfK1n- z>RY0&gG%_~w|#@!jc}8E8HfR7GEhRi$-g`Z*82z6BoH-867QcE9pO8e8;I|X-hw4* zHI7J`9;RG#1Y59V|0GMHCNW)5rZC^p2H)ho%tt?c>Q_q!vsg;YJhTyi$AdrQ&1hzI zbhEw?nH*;HFhXhz8B;$>d{i9=F~d!>wwId|CEH|3xTNw*@okGiMr;w)R`IbmQA?2Y zo^K#89;4OM#(EMDF+f>8A)4SMXzj5Vp2QlnjV}ZR5O@sZWo(tPpBBk6-PC#G#FmJa z+@*KQUj@(;e}Do6hR0>LTxkY9kc#aD!_jocS1x3Q4nERmJX?!P!3CWB&e98)1s{Q^ zeZzW<5MEx_EyD#cgCX%`h#C$RFs?8qFsUAbn6yC)=0)$Z(7h94Pq>(6LoGFyIIbz) zV?l0)Wl0RgOhpT+Nic~Gg>J?yxhbx+XcY720-A2-*JX+u9yNh6(Q-lR`|;xSRLOHu z#Xi0AnA)QOA`%7HaMz464dk6Rrg|+)epc1sOZ?rwC@KFSF;gVu!n;i>W;m6-TZ59+ z_fAR(mN2nVhEQ<+j;+2gVmFEyZnQ)vI4)6k9FGov_Ksnzavg?AQunpnc zLv89)ZHDAimq=?9ka4D`_^h%+SXi;XB!5ZS1&o9a?Eo#RZZ(!fhGPcVuATZ~EH2cX z2{mFuwe*vy)nJ2plvKKEb|@i0M75=Q_gF|-DMZ3#LSBZ3boDILoRZkJ94S^{lPae< zBLs=R;A3W(p2VSIPq28Mp@SRf+d0}gg#3F|4KgrJVUBw~}l^csq{%#F!r&^w1Ucg|o30z-yIZInd`bKIEk#<2$sab_N# zLVYB2w~RR(m*`?H#EGAa$xVM|8h_Z`+DpXmYW0;Tm{=pCQsCy)WCQ;K>>LYHhT5>0 zUaLsPOge!!2&$&M@N4?9)p)&U(z4+{uy^=5Yg~vevi^C<@dvdB^-}5-g*)yPh4=8@X?*j{PKq39s=>uB-Kbn0&>jO@IUFiR|`TtSnuQvohFYqs|z{QIf0ih4%@?QbW z{<_=;dV+Po|6B2|TYfk@zc^FOEW z|E-e1*HrWP9F0M--^x{JKMGsw{(0k4utWIcVH5k-f{Q-Jdq_%q>yREUAdm!3IkNpK6?W-&8+#o4!A(#B@U%7(+z&&2?&PyPK1Q zM_C^y?HjTVUz$2&O{nbOz3Zjr+(c>8cBr0Z!RhoW9!IPWQx@<4v?{cpZ>yV47{3OE zic=Em=D*sZR5c^lI)CZerAQvSu$VJ=heQw3ha~nKf5Be3AE_rR8_DamMTqnYtyR+X z)o#uX)Ls%q?zjd0K5oLw7toKvzL7MXv)@Ol#gBhAUV0WRlEO zbppe0ygCdl7h@cLH>fuwPPTkWul&&J3V zXAbsJt1QJlI`6_2x@kdY+4dn)4fo`V?;j6Y&u^04??z%IXS!@NV>@n$EO&Tq^U*nm zF-pYjf#}vd{J{V4R!dTY zq7BSoztDPw@kBiQ!VB9+DT@g7_@$Rw7xnz5B*VT#n;J|ND-${`Y{o!l`cIO00(ysK>?alVTLY&7qoagEX zjfEvzu^vm;Aw~)_fBs}@=y)kMh%~n)t6oFX?NBdJO4Jmi=d2vhew%~1FA_G+itU_F|f2NC&;oO%t9CNAJIhj%4kLVIM zRn}!>1&+`%jn5nK^8#Hp4Rdz-b1C|X#^&1i$ZLi^4_>Ar+Znr|C= z#P80fA)6;8%*f*=d=Lc3uOz}&doP-Y6&!U=)zyf~Esd+~OH6X1?`KU;&*DDqQ-#X)LQ z!*ETM>&{Z8J6EZM2{1P0r6>9wCs}0ifjHcmlpKJJNZfWl%QZ<-m0@b1emSa=`X)$K zxrIk?bP@Av^W?`^C(8}8(>#5dT)8u!Ap^p>Nn3>=&;Y02NQd2X^&-3{BLMCsWl?2Y zm0_huNZr3wmX59Ilox$Tl9K{^FKv#3egTtZzOOz^77nGHEjdpNoXbfTJ;d1)!B8D$ zIa+hxSAb^h2n>)NP7|LyH_0lvs`2WuHK@``Lo)I4JjCOeSH<*QPHiWOuE+!D#l+>Q zm1?x-+*`up?WxLxGzKbCqKp_Zl_783Bd+0H;nm+J8_4l@^j*QKR?J#8c+BFe+KFLZ z6UyWAc?nrdNa{O-SUuJ`9x2$Db+A&T1NyBI^>suqXxB;+iTnLz zXwMb+V`dNuL&=p)(LZqpF2qWDeniXgW|gVqANJTh;Y?xn7{OO*+g(A>ejVsp_Y8K1 zsS)*SLOnEs?I<~CRCU|89(n+|y*;3Vuy$aNotCrW!9(+CEtdL;Ez^&FR!D;z3|h=? ze4aslV?n+~IPF=3aSl5NCQpt#+G7cMsJN#sc`KcAGJRW)RJ6klg7nbOk6wm;0b#&9 z5Z1#6$a2sHw`VtJl!J$9HNs&q!F>Gw*(PmN0txQrkFb-}uejvAyC4kN3#K$=DjDm0 zPR^ylE|j4RP3y}haV2)zg*b1{N!nL)9{dPP#JmQq^CZq`qaxpK- *_dWHjhnt)k zun|Q>4oRno#}>ZNGO89cP9nXCOUsC%Cdp^m$qk107}el&_ZUyh#)fk;WS@FZ^4f5% z+p|QA5qBiFRF&+>*df-?LpbDC6SR1fjeI0gU>=%oB_jZ1e-((zg-?hNF%Mwxci_X# z8JOESZxA^_1xx<7bl$wbh%ofPrTFJqiVGOyF>h7*k?Jtx;mD0O9?(gg38b%Y$VK!0 zsm1xOJ=pdsgBot2^fEa@FB3HwkGd+hOfE1C5;+K=nq&oKt3rYs!QsQ#!nic6J6(3J z#9^~r!hJ2|g+ABwnl$bwh?V=VBEM zsLB^%q#vP4vX*OQoMGGNMuu|z)Kcsopc3}?XKEX`Yq$&?LC-g(rJIt^Me%tmlsmTRyIA z1Jg6ut;yJeNMz|w)1ca<)ct}f?v5Ig{-y>~tL_A)&7d(Ojj~>&6P)BH2|ai2c%e3B z&?7}z8Z?P$FQ}g&l}!2@O0c+{o8Xo7#gMeZ(W>1B{jc((-GvOW-h7P~ zY6v;#CXv;g99lUfKxZVz3(vwgP>d$yV32D@70lgv(CyDQ*d8N3wy*RU@WWl>i_#3S z34DkoAAt=e7}K}h@PNiQN&TF)mP;kPphXrGZtI^?)_99OGVGl+4VJ+nd}4hD`4FRE zNH@+olM6k;W9}-DoLvxaX@jhhpbvObmdn_oc~Ul6^HY+}!=S((kX_uOw23}yc;4Bh z0DGiOWsMIXA)ylYkT-IX{S#;b5ADf@wsM`_3^2P=q-r{nuSiiA?HP)865IaR8iR9q z5{UPVB76m@i$sAp%QOH$C`4bi6v5o-X{pb5U95^V-CNh59wOKdI`|OAk39kTt672*+yxk zgRScnr6J_UVW0q`B7b%gOc6kONz!R=v3CTdEVA+) zI+S9k_JmB)=Ak{ROwT4u-B=c9dni`xhur#3ycfNRJ?eeO1EMb>kxlb{UJtuJfgR$Z zkIU}y(dA_%M^vxcIxKy_j|pvVTBfZwuhP=P*Xt!+<$nSCG6n&j(2ZShIiic{e!IF!r4n`9$WofN$Y z!U>s)NpKn0qdhp#v_SkmH>hzE1fv9y;$kluq|iO$VTRQ0rG(T~{1Ou~w2bZNQpXP| z5uf0P^dU;TXfiGIh5^}O7Igo{k)p}Xt`6jyJyOWMI0hbkzRXlx(&6ATVKor#Er2A6 zP=yfxbVCJoeRPWO=qVbRv=$06Z(`sPghx1k8Jxavio1zQ`lmwb(+PB(G-i^`3S z9Rt|TchSmV)f*$oq-5yZYTKElq;5L6zKtEo(GluH(}O|2EJHOS>pjmWpk#~8w!m75 zc>Xj=l864}S4~dWS{nh+$+7C5F@`}(nL!{myBaDTQ!xp?5pr$i;&@*ituQ0_19s#5R&g4<`>2%Mg82LI!IC(K6U2JqJS6C;7$F3owuJ3r$`hFo z=StJW=Y)K!Rg)p%;X8tmR;OJ8v1>gKH}KtDdW?cM^xcDq0&r-)-Zubq1mM1WeTV=Ykpp)F zzytxC&PypJ6|JW=1pWG1q zpSKSG+$H>fctZdz6V~g8y1Kgh`g&lO0NfL-PZQQl2%vxfx`*}R;rCU+dfBkvH>}?h z{IhQW$_8M#02~bfH3M)Z0CWuN_W?l1089;lnqmDu0N56M`SRuW;r#l%;CIvTyINR( z_%8~Ee^v|sv0(UJHvHF3!#}_KKW_*G=WLS@7@}kuH>e{SO(pz&V@`=#*+TBkBgyE( zHh5G6H|9om0jqrKL#`6JuEOO>jZ>j$bm>52QRv_~ntIk-m*t?L0(#MKL|k*DSNW#u zs)S7?4I>wzU(ft`-o{~25KQLmzXpU9hA=uDGv zbI$OWpkprvWSi`Dl#rj8?9TfT>?T-}@6$Igj+HJwa`ufU*aH{+`H%-GY<4j)cb1!tIJF~jD8_U-VCn09*7!&q_wyt;wYSNv^{nozSTRww zrG5tb;Y4$pPNwkjNc>A#w0P5Qv7Fp{pyXu*rLIS$UElspRL_w5tSt<+8lFTJ*~Lp* zt1BMIas{2bw`-d0A|BTE5}}uDcwI(8uV6ljY6ZTh#G3BPY)6tM1@`)netPBZ`24ck z6^-V72Zfx^^k=Ia>~5Ax7aCMML@XY-0XLkqhL#3Ej+zKmHQm0mWvM?q>H9ZC)RFVm zQNGE?xKg+zEtXu&TPM+$YguTWK*A%6{6#;uxrvqmXMc)H@&Ry%Z}+&=-RWBda1_G>XqQb7BTslZ6L+6 z2V2iyk@AUti5!*E7x52RO_qrx+|?A=#K9LIA5*LmP_B$`^FB{ptdxQ57P%Q;wB>V! z*Jqpia!^G$`KRBdhJ`~8+YIruKb)Nor%KeftOdwl-tmwp5*j`#eo~*VBTTl>fH%{K z*J5=-2Kswco}hOswjjq2K5FkuuW0T|}U;`lVOmsPl6Kej__gQQ58jRK)UwZwd$teLJ*)X9kmv&l>b|&*L9* z7YKd7|CC8R_BE5q3(0qHJR2-%JgIc@`~gx&!Cl{r-)TEbGzUbMcMG=dKOjtwOMz?{ zn@w15Ed6Mkpy93gI3R?9lgXA5&@W3`>vtfOQ)qONuSfY`LWpbA?a^o&Skp^7`g3L0 z8XDR$`~GHNr~1RUqmPVxKG7l16+v$}a+@1K$a{Zoe%(Twlr`AFDY|1Rv$gcz=%9{S z0}~>uBRP!T@%Gfi_&YtTuI5=Dil6!>cZhm;wk!`D^zH5ocq=Eqmscf~94Mmw%TC$( z`XStOAB;oVP?CPV!&>SW8{DbYhU9wC!+ue9k8eNY>fBk6QbHV5DSue&JgwKd>~csL z``&p`nvf^52$vV`8$;iuXkjtQGO+{O-bZ`H(hz&Om zf@*`{{sDU`rdJrm-XN(qSO;D8HHH$uR~mCg_0(lau#Kc9NS_c+f4Y_L*D~xYGdP;N zo5YYSoM<~n!{xNH;OIP$AR_FWOtwRa`Zl@T53L>ah)~gdl{?Y~8|TlCwN6Aj*bm>7 zE~HmzFDgf}(EGPd-=zGUwq4Wb95bFZmu{;HRyx&V!5h0$-jbDLd2yUxTD~d!W*+8! zR34=YoO@9&B?tXL-oJTFJQTg(A|JmKJkDy&)0njRj?X}tlY0CLSfmreDfuq@C0F_= zH*@Ri7Jpt7gm-lB4h3Ah_+gI9!HY+2G;Nv3wxzA|D zzD1|xWEsJT1yRH13GnDZ*pB`4P6i_+$gABvcmZqlpfCtcX`MZCQiuvAcO3Si@1aXlPSy2i=jR zgY1FXfRk>;UOAk<(5433R^WNG)+6ZJzUQK>q@X+dWOe6-uMVA^zIpZ#31@($e?R{O zEXo2QvuGj&%pr6zs9JpKL0yE>JR3a+A%?Fw4eQ>1`3INOAk#!KEu$-Q>@RpFrfwF? zG00WI)g1ovJ^)N3anIO^So!7-A{-}DgWMRhHmy%?B}qR%{VN&n$jS*m{NeV!>$9@G zQ5Wc0_~sxR5V0>X#B>{eOu<#zh^{P)(o z&)qUnGXzQ-qeu?qLjSvN_#D{K+}!ZJb=%2jXTpSovh16X&?-ge90%k?ruT)&4#V*{ z$m!aa+c=wpR>N6?AqgMPiZ}0t2FvQ2)(jz9YQ5t2#Px)InS?wp>BGL=aDa&!t{HF6 zb`X+MDoKn~tRTpEW8rKwFiOpifG+d^cn!dE5~wzgch+eZF5A zi?&O9$4$+(ii9h*7;uY2j97C zRd>q#bA!-SImt;cu|u^6*aW*nm;ZE<5jy`Yb7*d&;GVfrNYiC#S*lU|FV^=j0a_bf zKBZkL>~Y@!xqM@;$Q%B8?}w`^(l>Qv;GBX02fH3z7|L`Ua;k+RO1Gtzy^sgYvA~?7$zQSq29l(}R=) zQ6)h#qiiIV1#O+j4h6y_nGklMt^@*;V4}SZXR(z-M^!RTe?xnySv}IHKifn2F4%g$ zMHf2{Y2mxkm$4@&_A0fZb?ij-nXpa)CBB`q7=pXShf+>bHWbKg{HAaOLXs{f^pO<1 zpnzIMY>CE=>&v|1K;(J*kI_UVW@RNp#85o8u_kG>aZYFAgf(oWU5{0NNE4QIWocD;r>iAGynqgA{zO*A+mrjy6 z#{L8rjCd8pfzg8a`r{jusj zP^VAr8W#dL?Mq_3TeJVwh%QM0?xkaQwctkRj^2upeJ?dMnDWZ*WFb@Lhpwt>2JlyQ zO;Cr1zF006;TozEa$l%>Ja>glH9i3Aur*;@2LrNkLD?hUj>|N8o`GuNLUs9S7y+0@ z-=+7O*_DKgVxTm*HkyL1Gd6^NX6TAX(Lo>8G%_+`rci}jEbp+f6HLk0&QQ<=zI9>c z0WyR9TqOUt8)VGI*36gg9z>wOB#ZiCW;pWJ5j_$Ja*~D`%qV%lM&IXKoztnbY*&26 zUGLWqw}Ay14BJ}r)jx6^*S-WZ*#+xx$^%?unSphRT0Uq!pNV=?Uk>^!RyS}C`S$TH zLok}*RWZ&s3!7DJ3Pks_HAco)<|wVZ*{f1Nx{nd4{FNQTZFkYqDIqgZ>y=a)GH&mi zwj5?yGxgVAz^y;oTM4NkHVvcNz)lZoW;%HlMpMvp?O-*L*4rSqE+_k`p&1VuX(zu=!K*=On{a4|jmhc+p5_eZE(`ekup1-uUBuPWfP4sPSbnZV^74&XAM@Lf^yK$KP9X|yzUtOLLyq$om4 zBbHqT(&z(_eprq^05k&VO8m|tfULuE#Npq%43Xv766@yW#k~`4gX14APqMxs|uvH0zg;*9N;YY{Q!T#@<|g9KtDpNFpyRx z{x$KiEH41S0}y%usKf8bL7I4wwjlu60O$*(g$O`U0E8HT1OvboqzML~10n4`EVmv2 z(f|Y+fbN5|{s1%}9{%%y9t2Q=7#kZ~EGNKwRp zM;rd}^fw5xOdWuS-_gSV@p+j&7zj_?+Bc=}!ua(EUU!yckYttp*Obe?uOq*rvc<8C zf7T*=xKA9e=6auNaM?a(q-XW|oL*o42c;KhUeCwguAt}2>%PgD@u*&*|6ok7Z2E4# zAPqklAg+=Uo8F`L~`v zHhA^a>|^?sb$xoW{c~`hjEOfz0NONsLxzbJ3fN`E*ofZ!_kZem2I*z55SviCH~rbL z525^i$D^@F_j@H<2zJie?he;?*tV>D-m@R4iAU+5eacR}FBic2R86xVI5FijcaR>r zXKR_-pTqifASP($e)fx>Gk5SL6CnsL7fqSiv)*p@4>q{xA~Wwz+NVRdxiHV?E=nTG zfk3!fpTEP`_=-~N(K_xi5J~nzIm6$S*bwh}HTZ=g-h}tmh1kX~roYMPtq5BZhOaTh z%zAQ&KEEC_z3-w8LmbFu6#>@6hK6d2kDX>m*elSLxXPvMvg06f{HN8v^!x}cJGK@U zoA)6a{A{O3OS4kl3-6|37i+nNP>&H=HYXV#KRvpg0w%ZkL^jW$GOw=`_F8|vw-D?# z>;3kvi{$B|Ti-U5%bic+PQ=PII1aR&j@KUw?flbIWjJN5@pK`)7ChNkOANXasoNAb zp2a;1(@@JD4p_gf>Fp}B{Z~t61aiz(aZKyaNu3Oj?1${*b$Vp@y6cL8ahv9v>Rcwp zmmpVaal^XjoZD3^xwFaIc_8J&M21zc^}+|gFP^hOx($Xtu6CuFs3WJ~1tBNtPkuHc zlXK)iUe)b4?eAMY^ov8=$oaT?A+$ooYm)HRUoyQY1tzBgA#&z*$wVw+*!}wPVRjPR zhY3dL!0I6^h`&BvW}+?=FsRjB6_hoH3ylVRa%H5l=t#k=f>Gblu0Bje`IDnCVrAm7#7{n%_gv0u zz=n$))fW;1xa*n%UC*tQKUIX5J9oZmi)(GbzRPuXS28ARk;{d$pGYT0wI zyx8cn-v#WKp zHVy5`*rDURw!LPhDmy}+FB&PmBGF%0p<)s1psEll55$@W_+Vb0R zMcqEsqZ>-Dg-<(OE9~bYES z%};P-^k;wRM!^e@h0o^>n)IocSXEdbrlL31n3ial9bfv%$^T5$2OHOT`s;l>mwsg? zOyhLEd7U`dXi-bGGn@WrzU48!#gCfFmsh_yc>$a{k(Yvrnf9oe-;ZeXf-FfEdp?>4 z^_Fq}(tOMZ@3rZL?H%&-C4TeO)$J%U8TF2uQmnjgSn`U7!n&)@nQD@a7vr z`)rIniOoiwVS2i@APhryvsUim)FQm64uQ(^e94pfG$)=z{*J^08d!JhXRZWJv^H`S zr=JPh!f{EaTk2%HSsw3D+Nahie;yS;I6N;S_w(fn$Q2N&j=C}|O$6REiDJ;1$Un4KsgzHZmJL2o>q13sJP0PD)+f0&vQ5= zIh%#fnE;Iy=RW%E#DZPRxNYhrP?bxApE!ma#Pu2AvGz;~$4){{rqQk_u5H1zzg5-2 zvm=LVlr|}a)8Te;WUcf8TMSyh+@6)kV0 zy=@Su4~O)@PjDhLg1#z)DGbtAW}o>RGsl0NI7bR0f>pJ{b< zbe^3AysJv2XsZugrtgxWh0YhZg?dh{HqDPac1sv$l^zlV^=2N3P+tV6U%uVaB3t_h zz0~py^voj^>&Xize;YHkqWl8VySMs`_q}%y;Q#K8hUgAI`mTGu~a4f7%PDD3zh%LR=FituL z9ukowZ1xFy`n3!1tU6eqCt7T-O8;3Pdvcz)FJ#K<<_0#)iUn3E;lXqlLHT2Z#4kUg zgh!(U`(kdGpfC}3Wl`Q8#8?l6y_is~O;v}%3E)00Ly4n%qD}52+aRq+5Fbx{XI4&- zA5_(F60TkfA#8ApBN_|2^Z<5o?3*Sf{N>Cbf6)5c>|EGQFbel9wyGl&6bvzdbY8AU z;_JR#))L&kW;L=ZpLjsW^oplth|%Q-q&^$Ad8u59`L$;MM!U%){Woswa2-Kj5DX1| zqq&HH*(0Z%v|Q9~)|Jb6O$!Xxm$-znLL26n5J%(;kYN~vr6gmr60GKUoJ ziS@~4xd5G?;X(S5JmkI4_Y#*tz9{pvY~6dErr}q5Z5D|joG893-@OG@Kjo*t;X5}l zgwlmUIF(k@4e?{;ulLF!bcyry&vkpMnb05seM6PdVz^>vBl4gd%>a+|vdWex z%hw4=ANU?vCjH#obo4{=+5o$Ybk5Kb7X2d9$M0l4OisvCR%_oT+HdWece$5TeO2}A z?Bux|lUOfEp<8{FAr^9CsuBXmt!cYvZ;6$;=31?JcTx*2SS7aA8zAh zrs%E~8h8#uO^jhM(U!w*Zo@_)t_m!y!y6fUJO$A@uL+4kWmHhla1|b9$mxq^ie_

su}_#10DlFj&!nn#C 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 literal 0 HcmV?d00001 diff --git a/templates/view.html b/templates/view.html index a12f17b..95f007a 100644 --- a/templates/view.html +++ b/templates/view.html @@ -1,5 +1,6 @@ + @@ -23,56 +24,49 @@ height: auto; margin-bottom: 20px; } + + img { + display: block; + width: 100%; + min-height: 100px; + margin-top: 10px; + } + -

+ {% for i in index %} + {{ i }} + {% endfor %} +
+ +
+ + function lazyLoad(imgs) { + var H = document.documentElement.clientHeight;//获取可视区域高度 + var S = document.documentElement.scrollTop || document.body.scrollTop; + for (var i = 0; i < imgs.length; i++) { + if (H + S > getTop(imgs[i])) { + imgs[i].src = imgs[i].getAttribute('data-src'); + } + } + } + + window.onload = window.onscroll = function () { //onscroll()在滚动条滚动的时候触发 + lazyLoad(imgs); + } + - + + \ No newline at end of file