From 944844aa4c898b46e7cd2ee0fcf31c2c4926075f Mon Sep 17 00:00:00 2001 From: va1is Date: Mon, 13 Oct 2025 10:27:04 +0300 Subject: [PATCH] ZH --- ...g ZARAHOME\\src_2024-09-05categories.xlsx" | Bin 0 -> 13303 bytes Parsing ZARAHOME/src/categories.xlsx | Bin 16081 -> 16012 bytes ...ctor автономный для сбора категорий mac.py | 71 ++++++++++++++++++ ...тегорий.py => extractor автономный для сбора категорий win.py} | 0 4 files changed, 71 insertions(+) create mode 100644 "C:\\Users\\valis\\YandexDisk\\Python3\\Parsing ZARAHOME\\src_2024-09-05categories.xlsx" create mode 100644 Parsing ZARAHOME/src/extractor автономный для сбора категорий mac.py rename Parsing ZARAHOME/src/{extractor автономный для сбора категорий.py => extractor автономный для сбора категорий win.py} (100%) diff --git "a/C:\\Users\\valis\\YandexDisk\\Python3\\Parsing ZARAHOME\\src_2024-09-05categories.xlsx" "b/C:\\Users\\valis\\YandexDisk\\Python3\\Parsing ZARAHOME\\src_2024-09-05categories.xlsx" new file mode 100644 index 0000000000000000000000000000000000000000..6a48bd4269989159973557a8e006838d92b9e1de GIT binary patch literal 13303 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 literal 0 HcmV?d00001 diff --git a/Parsing ZARAHOME/src/categories.xlsx b/Parsing ZARAHOME/src/categories.xlsx index d6e33a40e7e581d2fd932c0ac1d71e058dab72f7..269c2e12429cc8863f97ec56cb7a0cf9bd3110d8 100644 GIT binary patch delta 11041 zcmc(FbyQr>nk{Y#A-GF$cL~-&a3{DE+}(oZ5ZqmY1cEoN!JXg%f(3VXcbg`6X72C) z@!s5dZ{B^qdiARM_WpK#QmfZGb!yZn!lz;Y0iKFm0Ffhp1c3+`wVP$d^2w|LLhdv8 zf+z#Qmf|R*^ogjWWeb)-T+uV#idUrN`_(s-JJD(Gm>cyy_%J%m0MX`TFOx@JG zd2J}AqSvO{8qhreeZQv2WCmChIVmLuezGEgM^i0sRMj+MhrE}#_ry`eBQy!=^E|xh zPcs2S(bx%ih6@a_s&uPw;b?gBV$S)3 zD{y~Q<6yLc?n7Wj3w$uY)at7pi=j}Nd7^zgi91)n|IrZu*yMhw{OZ3Dqsur$%)_Ny z9ryS`>&BY#2|42JQ>28jcBDFt)Z&ZLX0Ezdd;(ui()AegtVfGHWnZWi5^3?Oc_ugw zjlDkTQvNy96I495P7r92cRUMOP4u=~VNjBxiBlg!9^ z05qk`zD*qS8VG=;kcaUsrB*dpXF7Yma)q+m<(}XW*vskR?#7i>HN(NdS$JW|O5E(h zLt;pUd7nnT;|6>0Pj6`y=l2F(wrX%|OB#BZ-6D}^bj)uneud8DDPmEC>D%f~k(#1h zRg;D(IjqygvUn`dEUAZ^y>QUw<1gZwSf1^VbA(*;G_2BFGa^C%20AkU}H z&=a;iT?3bEcOxu9Z5Z_hLzAND`)w3T?A}rqKp(K_IrcRjLY2(ch*87v776cj&qyy;6) zAVJ=KmGyPd5yOR$SgU`0f>~OKlB-TuX-#m^-DvfiTu30Xxot37>1CUHy0Gx7Us(I+ zlb;+%5xqZ2-DD65S=G0xX+}9Ip*eMvv$ZzXugW*pGvIz#=9?(<#Ka3~o>tV~urFCv z*K+y3i1{_0J~8|qKQC$O+n2AqI0W;BHNg9yD~i?GwOs83ASr2rV8eIVn5g(jDGfnc z#WD^be>bcAs)sfbW)Hr#WzzP_rTc`cz*c=Yi#$~%F7_tZ;f_QGrn@>>EeDl>@^?$P zSp*`#{}G;0T`y4B0F->_AWdQU7R9#~o7>M&nVKCU6UdW`RG&WzWn{<1eLJ=$K3Y*TRDez_#P zYpdX(iWbCES@f0XS9f}pV_rM@i7oO=RbG#Xs$Nd{7R94e$@bqFK4?S?pZwqsp-d$x z9U32?6TM*Qd|bk)h0X(iTa(`T>1P2`GriZG5&V^(N0*k;+kz){9;DOIK)V9CmHXu= zNm{Hg6t!E!$0osWdyH8|UtP?5KBiJuvxXk^4Dqx)yb`4#uQ?s&E0uUb;+wf#GB4!6 z@zGW39_yikP*-*zw(K*;qY#v2=E3cjo6<41BfMrE7GB^S>@Dq)FP`7Yx4UHk&dW6h z$UkR~x$GB$f`WQ_`twurbtsCYAy(WVFALED_lD}}Wh4}A%ds_5)$(PhkcFkdS{)As zZsJQ}cf-ski*MR7ejPviWX&=NOQM%PJ=|X0v1GOZkLM?KZBI*zZ4V>Crz-{aPuKT# z_ICwKN14DwD`3$^c+jN?7(8ChU9~-3L>oMvZrz~?-Jd^g+}>|o0k=~u25mk!w{;J= zOP@4mgB3~J#L|WKf##>}xyL8qQ{zBy=F`p2+K9m=;FW&WQDj{~yzNtQi;>f!n{yyM zGO-(7;MRaJ_c^0OUx>tJiFiaFGT!^x^6;_dkiZtvQ$hz~2I~JXZle*?$~xS>t?`9< z>XwbVeJcbh}R$BN_o;lNErSCF79|I$1@F0Mu_!L%||TFg^M zTu&}7eSc#aPa!c(UQq@kfu5wvC_W+NTmV_E1g<-u9(||5>m6&jygK<9o8WtA}3b#BN(A(^D>BNX7S-3xmd#vi05%aVXXWU^) zD-p}RS_zP7^DYM!6op`Kn_?!0oa@SP@uq>B0fqOLMop(xp)z88ix@vtuBr+lex!% zmgA6w=LO!3jZ-tA@8BzhoYy?}(k>$=(ek+#pn0rpUR#J)#>&LLO%=PMR?0ihg6FNp z!GAI@|J-i#w{KF%&Gq`LvU{rg2Lwz_QDXIQ(-1oi`j267@Piq3;6=zm`($dz47s3i8 z&ZQMjw{UI*ZiyNp;gf45^aXzZP3hF1rxS+3o2ghwnPW#MQ?f{s6yH6esrx=KP9a{ zEzB`OD(e&nTi-k}wo(n1jO02mNmUHObdY9VK2@$F*wmXEcl;#4%tBRcxa1o7g>#E4 zZQUm|9+JOT8kN|&JWSf+lb2Le>p>YjLZTZdR4~d2fc8V zCRuIK!x_vO5!a22{Aiy%83O9>S6D5x%Ndc?jZ3Mg9WgkW2|ZHk?aJcrTY=>U60NGR zaBtve%;}l?)fktYy=zzFyu0rrg%gX8hUn!6j_TgG#s$BbcEug1mi$C<)etUQg^PP* z%ca|q&r9v^7@HaGjk6Xf(BtGzH2h%-3$rQ?W6K#o*@UC))bgcQg>}?c9nsB6pE(zE zzqM|oHldH*THJmQ%Xg(f>1kJaU_6;Qxp)2QA_D9QDjsq34(5|k4ZaA}npP?1x``T8lB~Fi=;gwXzVcd+o_gAKCRxhL zsG~Q9n=T(}El%YlO6XI|yt;nnsv5=D$U@XrHXxmro;CdLydm1!jkFk0nA&wFg{)Xy z6h(dku{n`4d{FCRvuTW+@fJvkxf_NloAH4Rf=#EndY$7{CjE4~*!Kz8NOdS)^wRLo z_>_3s79XiD^G{F|%Q$*(!A#kJGOS!VGhU_-^%iy45sV-xY_1g{X}OZ1rT^?zDeVQF zISy^E71H;9lyYDPNHrRSE>ohdLA08-#St{{G-r+nGQE+(@aAWgR#|1BvlHT7ttd4O z=Zlo+BcVz2B{dl#HZ9>-6TTMJ*3D z@ajs~@x9OQwbatyU9RCRfwF#&5st?ms4$kc0v(w@vhfkKMh>*IMgMLej1(xc&n%g zGUlOL3PC0*e72G-h0s(iBE4IXT(VXGF>1OBXk?;7bmk@Vpg@EU@-zqmX+ z_U|U{WqO1D2Gna!ocgY-mqCfEFN4IFUj}6!ao~M&iT*H8=Y`OfR0D9}UDjoE93y__ zz+247>^S!GL~sT{&(nCCZF<9WF5YB5sh?1!RcKa0HH~Tc>Mby~ms#L^&|rH}!H^6; zJvjhl6KMwRrd9=2fni{{MuFelnb-@{F5?|&9%Tx}aDvUvnFL+(L*sf#69K|lK@i0c zpa_TmmWcO>E(yBy2T;LL`O<gOMIH;eWIenl3GAY3qkdYMMps%`-uiZ1H{nxX) zNZfk_=pZd9?a&TeEd-zj!@sBsqK*JE#s4Mq5^msG(ig+@HD&B`0DUpfdbC8(D$Cr@ zDrB0p{vUK0p&%p0XT6RLIVJk0!=fFjwyMQmh8Y=qUC zbHhVW>7UPNWa}SvbdVkRmM8`Bl`pqId6tU%lRk0IA9$qynR}2#3p=36JfK--kzk?% zG5AFMK?(bwQF-6z$+K&6@SiC3od2NXJbXh_FqDypd<%WG40LDo6fAEJ?=C8}s8Sf-i zx(sOYnKFK5Pg1~_Er`fd=^6VUGXwuG#s3Ly;QuxufA%C1{K0P#rb<2Rw8r=el`jW0 z5lk8XSu^n8qyLYyf&b&k|LIWZj8hUS<$Z%rdyjmD2D7pCG)Z~Cn*v4#7E?E=>neYoNDHIo3*#!9j zQvYnd2JtDq^;a#T$$ICnh9mhBY-As^+*R;COId*7?bs9(DRRA1&99;8j}`g!N{EOmV(2ztFrLyx(-R6Q{DS(<4v_bmqD}{2C|v{cC)E-(8j;l5Pk^^shiTNdo^5N%)B! za0drX2PnD9zjT=7s*gyUaD(jpS$BPeQ++K3rt*FD59u8o@+v>%!Dk1tB-zz?!XGu% z0yyUiYkuQ_>ZwJKlJr)?z)SK89ra;ieHEqE`=tw8t&`^JvW-F;UH<#{#ESv`FS%9p`)l*)$|q z+bOsKihkc(tcY$bj2cY*iv86Q18?*<%5HV+jMf*tchWm?u>%& z{dV)PZX-QK$eAH&-R4}=zH901RKdE}{keQ?BH!e}#>I}%)1!u}fX}!@4b3Q6y%ppm z^>BXHyYzIK{rx6rsrL3_$4c%hddpl-Z$lo~J}Qc5dfY6zO=G<_20VW2v2;rt^0A2cX)eq_h>NY0Kv+@+oc%a8dLzeY3hTh@Nm zqFa-VrSkZx+VhfaK>TR`CSyX29;yU`%`qB*Q2%fE2HMe zK1k-~5oKNCPr)o%`IAkMBZ2FhwyB7jR(8!`*iO+@c(CB&7&kqekbh{rUa0`|GFUbC z@FE%qdls>m+!gU8v-apyW5XylQ*#0Zv^Rcu*EJxSlqFF965Nl3XA*3lFsZ!*%t%Yba{=o|U(sSQ(`1R@lP zHuC3DoU5GP7GW$NkQb-#iG;F^DQ0<;mD3KUEn~&OBsz-f6_JkIMAv{Yg9=5^Wq`wY zzIeYvkognU_fZTSVPugctd++J&_vC2AO%>ckC5WTm}Ya_QsKMAPEf+^O$QRtieW}V z`bvmlrjL+ujVsih&1oXy;eL~$e$vMt({8tG5qA00FPs)VOdDA&pPj5 z#8=jzh#V+4exKhj1hxX58t<|CUTIZ0ARu2{Oy|so{&W!Sku(b;G)ty)##lKO6n0pf z#Y#9f*hN+HA%0c)iF3dHsbMjgkUOYTHRG701kpho&r;B!8BK5lUk{GfN-i9|r2f%c z0oEq2&CYK5OBOs!Uc5Wp*bGndzGwA2ex%7>H7*(r5!AsHEqVluE6p*bcHTVTJN1KA)>Kt5_6P%@8G|*}=y1n{aB-;+8G(MAS z0-_{<5pO+d6(`!#6)7+|)a$e!dzi`P-vqVBPuOE&D6t16dVH$V59OgW31L@7IU}Sg zvvYwKVjlS&MeYkVTTTStPl^GK*y~)6zbmB zby0nF*wE?F>uU9m-+NpZZx4lu;NyP3K~L5vojG=I?*|vx&o~F#MGwMm2UsHqO4lt~ zY5H%!2z%86r}Z%8zd{)Oe6;bBT)}e7Bgd<-6rZ&`yU}2T!6D9C{#EQsOYZABv91)% z1<1$}>w^l)ZWd6lzMfgBYwTYatCF^S-vv{=MA>8vw~h04EN5as)BWD3B9AFru9j2@ zI}*V5TY@z$&bo)<$2Bd|XPv4Dq>1z@V=6dMEe8=BV8aq;f~30nB@q*5iZ~t)F9yjZ zkhwGOey(1(r!S$G?uta6;`pCJ(Idzi;Ki$nk)JYANe@49Db71s{IeOR$^E7#@f?h)klO zFo((84&gngabA-+J^NMn9iKG}=b^L_=9dD>G;p>KzlCI7ZF>_TRDb-w**%4Z>W+KU zS#320?x%tWirYs$xKkI*GUH$UC3fnK3e(YEAVM>~ebAH>CD#|s4Sx%nlTg;`mn~rM zT2i9pHF1Xl_e20$y5HAeCYmuWJ|v2pfS68u8RJ?JA9mjg(%ljQ-{sNlqJGv@vswz4 z3jp6lM8GAXFaMLI5M{1;(>F3{G87S3B+l@A7}$E0LZe*zV>C;!P1Cq-Qq^5cGIT7D zvf%e^(SXySjZbJD))W*n-ShRUSqlEswI&4 zlp%D%TD}_tr>qNQDm2j?C!vE_N7a3&7O=I0rN*iIw2k~W(uqekjD^fi!xYO&z>$y! zOSgPW8gZ4KjUz-&qGv!JTQJwrYLj$a5BV^84{poTEsgN(yBR9Z*_*@uPjsAggj36) zifUdRIb(r_W3(BTkA7e9`$J;p!%5hFUx?!s_qE<9emB|Y^OAS30#XaYyf4XgdjUE6 z+8$h9ZNBeVm~OBgqYX)mShKnN_j86NZ!e{P4pT7>cnn$gBE8){+zP{{Hyj`RN+vrT z9Y-0?V=5L@hwkDk+avaa*UoQEOeapsPg6FD^iq1dT5o$0*-L3P)#CKkqTr26?OJu) z5oZZ>*L-kJr)ga4`yxA&cxw*$ewUra zzWXBRnS&*kh87e0I(Aw&Aw^*C%NQBMczd9(Z08c8R=HU^p+-IKe*UEdEsvU5iVmEL z|H958r$EKBOMAitGl&UUZ(<>?>*nTZ%ZEZaW5L*I4#Qw(*70Hga4or=`OS@(TgrGN z(gsKM&4O@hBv_r33+$^;+-eNi(@pF78hmV;=;U>PjdXiM9Z_oh&S%O(cAF5sQT37nj&^+>zME?7eSDv~N^PKcur*rOSP*Ox zlFtNE4{Ta!9$!Sj65JYvb|0uE1b^ep5y=bRH6_sgEU8hu|i0AQ`|4MB#LsE1 zz;16xz;HxL~BrwdhP7&m00B3gs&Jwmlh_ma0dc@=CiH zn#o3lu;GV6Wwng1o7kL+cd3q|D3#R;}6oO;H-+Y9CZOY5@!LeAf@ z`?9MntMbGztkt#$jT=~XyK#SVnhGgD#WQ|Ge#`x$;(}iZJ2lD1GdJy5q#he3yiRX3 zOFRoBUesI|1rOicIRK63Sh;nyB6zEh(y9)#%Akg9u@CU$!MLgRCqeogxG_{8GBxG7c+S~Frt2r9AO(%wZ*I|5gfJUb7Ya3 zGJVraI>!#ee4Q1Z?Qz+qvok-gP_Zm|V%|O+r(x+d&G+uB%>hIDl6f}%qf&+o5@a4X z9k*Q)6M7xyHWAs(4CrasA?V86+8t){tI!T)Pb51X%vxP}$RKR&KE@}ZJ+#dAg#v@+ z#||}Q?}~LCe2+aFXFqwPtD6vKa>?IM*hXsvef%7|3?=r?LIc%u{e1iR?+Pn@eD+R#Zv;MAC<5c9*VdTG>F_n3!JPS2WP{Y#AwJU1Jm9n9U zwAGVw;dv6=aWZVo+dYw)Q78{+d8lSR>}h+Vj)d8g;eubS)>enz9M=G-+!1Zn2o6d4 zFG|`uIt02XSh+dSzsC5DNSztZA(Oog!ojjQVwFaEy!5OXc;IKHGgqK`_|Pd|P`_o< z5xu$(ddo|A*Q$8y9fp32dEfZSJ3}EdkEChUx2Q5RiMQ>QnjKY0Q`Rg8x!&g|l)z;b z&LV|PTAQ3+8-p?GHULbl0Uj9Jr>C}*JLPN1pYhwQvxk2~1?O`KJr&%-{kbdW%PS81 z?-x!71eBqP;)w;B2>*U}4jKv%a#8BAu_+mk7!v8#%L4bmSJmmi6;~c*) zNJjMcr(Y;2tiPa8P^xtC$8)7he%1m6*r1R1}v&9aN@US)O-l_ zrXVYjXT*WM;2^FsnTSMT#b(<}P@ z3pP~tY%q+PpSa6PuuXvkv(ilKHyWh~gG&7Y*4hK4rOZDpi@AGUV@zk9;Ph4BXVXbB ze(1oiCVn%kO6%64(1H-dT0pX05~)=z%@S+y88f^E=(S}wBi5N}Vl^@DX zv@Ii4`-mrHL7yC8#8=yY*EzsV{wzUFm&@u_I)deWAG;KuA&~SL0OPaPxm1$IhR`*w zOlWx|AO$(I1VJ(`)c~nFrI?ie2Ql z@E`Tkl$r$qleCNWet;^SvXVL{t%r{?Ee@eq=b z)Qc(CLEij`pHiunn>%=5WQ&Wc;X7MPyJ&hNmn;KEKCL$aoQgJ1KL$01Xr`#_pJz8Z z%%mT6IxlH+cog$EI)zm)d39YYBgG59pAiT+#i)H|r%J-k)N@=lTq%k2*jv;f?61e8 z2g9&a|bwBW948gx@$(%Wkj2Q*2|2 zJc%+a#B16-Z{RSJNLsSZPfM;6LLWc9(LBHP!oaB}lec6oCAW*XF- zjI1{c3aghCf3}~)#KpklS2LsXz+v*A;NI90!oYM3!om>2 z#8HWo0I6}x4y&Bl!AC3yK&3Y_gTHw_PS$Rn)PmmhVc(n+eRpS6bzN7;yW8atsS*;a z0pacKA2+{Vx%Ebbw7fGz`zb%U&YLb1FF~Wkl;WlWJZLMos;`PTD3mL~3yS*XU=5CD z5DJ^}mm?h`pnwOh4t!F$HeX{THx*fBb)*ew1H+;ZwKki&XwCZ(H74@-c}gyGWB#A# z^oa6{bNwu6gfPGql!W+Kh0D|5+!&Gx>wojsr&_?j2+`P>!9C3ccnFpEoblkyrav{_t5M#Q)tJkl$PSP<56i?s7F-z4Q; z1NLTg7PI?-m9C$H*1qX545mJSqbg8*`;5az2Ca@L4A}n&dejaE?KHBusQS~c$1?^Yn{GJg+b$nhPV zn3=^FO;9~ixrs31R-W{Tr~k0FnKI`S(%~AZHZJIJPSnwbIhmXgV&Mo^fufLM@`B{K zOcqE#EODiEE$Qsu$X)dq(FswYEmk{d0sar|Q7BRPxU*sEsyz9IA!7@>na|lH3;+Z3 z_y`02DoyK%BCp4h2BgQ3<)Xa}Xa_$dB8+vmQT4+QM$GzK?9T!eu~=34bIlR!Q`CM` z2%0^Ip7nD+_D*6VfRCr=&H2s7Sszy0{huTLHlIhn7N4`biqSTatH(d(k5@Ba9w;u$ z=NI@5eF5K_iwtp*`@6}zzIwpnL8)(xWBLAirl4Sp<4xQ786m@X{@$;gj6B~YHUi)G_O$a3H5&s82t&0xKf7U_**L`?Qi1T9TpRWM=* zm6PQDB!*V)ef}6su7=ACpT<$9+Crn?4-sX6+CE=eehj^4T_b}hhqs>(Afc_3B+QfK z8Eag@Bx44#B{X^1Ef(Ps@Sh+PB1ck z+tbs*Aytl;$R@VDZwY174#UlX>{HGvzixInB;C2#O(smO!9KKj_EQ2Q8>CIrVrLn7 zwFU(>0=*#Iyw?EFm`9qXoIOexXog&k0BaoL;~D#=B8`~ysZc+t5H*2AO^O$uZ4W;{ zF9+IyGipbfnh?Yz7<4(!NDe_vmAbWtYPprFysZkJfCx7(mi4O390%^eA`_IxY!Qz+ zU4r>C=%DNSJw!^BgOaEEnRk|k;0XYd{)4HeLV5=(3jX}e)0EDr2R8psQu`OlfFo|+ ztAj=g=PVyKg%I=1Ga-X*)d(ot4<^^bzm*G3b&|cFxmQ*9A%!IW`8pqT>G8D9wFL89 ze*q?lvM7Yy{dvDBbt?kF0U$teV^q;lpoY3^2T>?CU4bs7>6=Z(3*~3!vQV{ujispS zN2^0rR%WK1>DrIfVp8DGYSU>jNzpeeITC^{wFbWDu_e%1_Vd7$wKLc+SBvgV*UGK*Zg zvWLZBVsZ!47=?jJ;;qJ|+48sQWN&QR6w4dbGc$2&wuoWtWr5)-Dw5hN&=pH&uyN;W>$RanEr~n~ydtom zFlbKQn7a1FqM$S#!5H(PrrL5DG+&uE)ti?#eJ+D~W+hHtCQg|Lo-`sqg`d~1efth8 zle5BoKB@Nh{vABX_{fX2>Czw!&`2^A9+ulH({!LVPCuyOvb$n`J0qZ!%h!64%i)|P zXV<*YGB{=3_5O7iXdyYuYrQtwV0W~~$YnP&lbuBra3_JONa$gc(P zvM{+qUMJbImFdkPM#($U%N=jiKaiS<;G(IYmuy<3AGq76uhZ63eUmPP?V6Wcnx>^O z7ZmOGm*p{Z3al2QZeRgBZ>0Qgt|7Q|_ZN;gJJdr6>3rR$ateXXBq2=5`Zra3YRw~tfrV{*)h)drv7 z5K%hc$Z@%}6lp=8@aE6M*9vxVUHdCmYgk99)bB_)vEPtJeAL1Q68IvI?DSU+A~fbJ zpSOb5Lo$?IxdWPIt^CzBYOr^+yg)Obl z8Vit+-X=NR;aGWK;$P6?nv=gFJ^H9+HLhlScv4dpJ?Nlr{BTmk^|>JXg}5={Y0b%J zi<>DlmzV-DSYPS}uzJM2nYNEyzn3f|VOGlKd+&T>_i{)nozMRC;aW2SBd!pfB~rB0 zgKy3Ryw;^vz~IccLW4%7&{^mU_t8cxr*jWu%@)dHW0_o)<;Jx;86j$Zb*Wt+#yYfw@ zw@HhTQEnFbF8<(|3%uc(IGyh7ZW%U?I+M+HtKCiQvcix49MN2rdUfC18h6GU4!QfZ zM^c0iIES3mEpjiYOS+J|ShqY(1+`SgLIg)BVt)37Ge}~(q(bfot7)r32vW0Cs>KDE z{wWIloDN4;O&2>!S{`*{$!oS09CCzgCi^>i)1(!VQ8`83my^j|=v&cpgMku0b^XS{ ze>D=#{E7S~?L(A{)@a5K9+uU5+M2#OcwTNJZROYWTaF>e^bf%4adt`2~ zPDdOLcXdcVz+7)49Ix*dJ^z4k4U9OJZ+g1?ruv=Y6JG++X+^{VeQTgBehm|D`DWNa z)OU3RZuxrn*51H2ra)2THSq^ums)VRFt)b^zgAq2M{>6*p%cGKG2NP z%IRGWu~i{99h!u&lYo>CVhvu1a-1e)k;M75;KJ49j0|IiIp{VfG$R;OAwv>-2Mbvg zn?e^d{OTP(Nz2+Wvtd`pa;5}8yGk>b&GQl%_f;Q(dTqo?yrVAV9_Gw60alg50Anr_ zSW5;>c$^YHcavrJPE^POKyN~Va9Sa1a_%!c(Xbmsk;O2eG%IOF(8bSZPYW#x0`x8z zXs2YveNfPTAqdi{#C9p%d>FiA4k{7=GKVsx4ndBp6lgqz%yqIYg2m^2|gVWKiw2)Pac z;;}@0g8Bvf1U2NR2_t+0K_P;FFhfBGvGx%)S`f6Wi1aFnLY3vppVWaU8_nev1?7S! z<}BKxKnOkqyikNBeRHU4E{M}cHJfF51I1h#nq(lxaQSWt*Bo?nh7|@R5@_$l(bM0xOYZ53Q5&J6w)m~@F z1w_iTLnks72!E=UgbEuauG|5kk|Q4E%Ktcq%V;Xt`yKPCF8@iSGtMVj?f|GP&~XI} zGN7FZoTfuTQeTZi8&&yg0U0XyuX#fXb8IAt2PL<(F$c6Uh5De}V}gl+0C!^G->;FU zv0S5|3T3)Lk&)9(xdyZ&xe0S3dl*f*g!)Y4tBC&cjZ_hVSY?PK)O!E3Z|kYR`{+;$8eSh))JMCY2|COGehJXP7)jPDOf9C%O z+JDtdlpS&_)HZ266wZZs5O`{@*wY-T`eA z5G$BF@qfS#{D0v5M@rydo6~7PJC&QTAhL(a^uN~x{$BzAi@3o5#Ypn}s5+jX&M${& zz8o#nd-1<``=4H}IsC8Qtv%x3J*Zq7P*PdaF!6C-NEl%KWV6Vt#T58#kyFG7sbu5Y34nOnanAC8)5+ix4?J7BO=k`tL66h5%HEe*_+#0v0>*rW^L}3a$`z%g6B?GXqn@A2?nNglZlWe zrht4ScbaM0uex{|--Q!iPczg|k@3E8k7InRZw#IXxD?>IFE@k2L~yU^kP?$`7nHP#zUQ z=&tIx8-z!l zx^lZZJ9NK-7i!80O0?<4h>NC$tvvhl`Dgwxm>fg7^J!_#gr685=um|&R_TEVK!LC<}5#;4~9k8hH!0k>r891$Ad%w&q2&drjOS(f5m&{ zQ%?1bNsLNMyYMYHk?JE?da?&<(50+ib$A!{q(LS5&0rvVZ=kYb8x#823+D_Z(<9z< zQ3laVZwp>}JPU3y%rxHfz@Cr1;#iZ8?V{eBL}&WT4#?Sb6eH+(@jP=g#T8?!Xwm@( z6akL63g1JbHBZr?e~6%7UFiznqQk&|mEvrf$N~E`0bCzLqerU#CZSlmxd}>nan?%1 z%3IhPCB5DL?031VBi{Gv)Naw^5?mfBL+uv*CI%{t=XYmUwZ0#}q?K!&of6$Yqo6Q* zTljWb|NV={+YA7CZY_{6TQE%b<>|)BtKGhgipRUY>YtmiZFc8_rdCR~Gm~-b3LXT1 zLaYH$;G^@qMNOi+IfHc91$n25y!cIB@qld*)`YM&`#MZz`Kr?XqYP2DC*&nV&h9G%x8 zlXcRN^iuA2KuTjcy=At*8mbvAx0K_{$I^J6bn38)&rFdhCXk;CQ#jUgE@Sc@L=HTl z$Kwx%QJ!C^yq;fQqLUjFhNv4`IU8jx>q;^V84oOxQz=MQ3!FQHX<9dd!I^fQS@H?x zDl6C}G~4g8xICZ&-wn(ndGQ_T_lWv=e&V8RW*%AQC5jgOGIJp16y>wR`jl;21Gd!x za|Eu_`XXyoI5k}7mc?h^@Ud4a4bnM*JU4WiMKinQ@S`T#$eb}v93?rOb)V#%AQ9b_ zPu}%{6#en9aktad%Zr+LD32@5niVl^3ns%98AvRhGZXxb35{5^$e1zk$_GD|s0eL) z?m1?Y8(tjm#f+k>P>0WsnqjG(r@{77&&lA-(6e>Q6BgqIQ?qfp|EgS9QDb=v#P%gO zSGnP-;hx#0nDJO+Vs^Xpc9X(;FGqVNNID(t~c_y3y>T-iO;m8!$M;Z~Wf>io1of4~moUcFT^65$ihN{x4 zZ5~CJW%bRCP)Od>J7BK%(_gOHsU*nkA}bu;S^Bjpb}Dsstyoamcm$cZyk22P=u@8E z6c+8M-4#-t?MRqw21Ho9eKAq{a40?4Pcn=Yx;NOh1r|Oj3*<)-Beog?nHv0Aiq}Hn z)IX?B#8P3YIHJkF<+Yz{amuLkG;<0Mf0YYei|{jA82y|}^Igr(|I`HttsSrQ=-Tpx z{q>y-e{&*qbnLL*$~gBTb!F))(L#fYve5q>&8*W}$7>qf*h==O-^r~gJmce}a3|{v zF7B-l^E57gfYgoqfoVBz{o4iJ@b9h_g?W|o_|A`S4Ye=7_Wb&gEENZ4ZTv&} zLnbxEmS~ztO*KodmW?>rnz7_oEnBsBIOnw{K*>;(Yu-qUimKCi(yBw0|0^)c?AV~w zX5v<7;)OH#i1vas2q8Ds*J?F(|M@D$Crq_qbt~VMo{cp2Ok~+&RRH(pY!w~PZ(9>V z{zy#X3$;bt*=@4vf$mP3zx2a0n0&9NuLjKjMvbZrW zC6*{D#FZoL$K1%74L*e*_?bE0e&XGBBIls&R>$t2)?$bGDMBa0K6}5!VxlaYGGx$W z_nL8wu-48QMy}2$rWnYFbWW1H?)sF3YL1Sux23eHbc$GyM&J+$-O}Sx^ExXV&vq3>N>}% zZ#P=&eepk-1(gucijYqWP8jsMv9ctoU+5y0m^y(Sf(j0X0)>fY1no$&WSdi7%RR>& zZerL?Zo0~7zttq)Cf{))9@?BhyQvZ#^RVyF?5QdK?CjGHz@fejl+ZA6l<6W@milOm zT`D?5_Qmg2$}>h=jIR!IMG*(0S?(D=S#BVk>!f4sLix4V`&%h*K1~duSY6zpM>uQH zgQDSBb*-n~!2Hg(u6#5Ji4ywO{CIr)I2L=mg9XC-b#s|d|sEzo}%gY4`1Psq5 zzU_^gKJzCGxCA(d>U8ExU$C2ah40u~Vpm0&pCxEGsJv!ZTUmXxp=4pH35YdanHS`r z=?JN*;&A?W_4p+it)hs1)is)&FrPGrZQD3KxMudT1$a5nrqKxhY~jODAM6a?b6Q=L z#>*kpojf7a2b@-9ou;BCwd@lnno-8zY`g?37;rxVPBR&_{aTQU+vVskei*Ruh0W1z zD`IhD7e+NAiG}E%KYjs$r9q_rJnO-Yh`Y0-_Rf5RhS|1^SYLYCvpA6v!I4<|`!=xL z7kts%N`Mg(eEr(DVS?ne#oQk#-}|ZzR?I2R?$AD@k(kGuIkoJs`k8+4;2}Rn?5@+0 z@plj38{=K^Z0XtIj8N{P=Vg=~7ywnEjF{FW-Vt07|b#Izo z?LKzU{%Vr6V8s`-F~zHiS*DAS!Z|P4LrRy^Prukv_;0k~A}-a#zPd~x(0oa3$QedR zr91=}J3ge^Vx+vdjLE=C>6@f+rx|>I#Vl>djIJ>8Dep`B&u4oPK^`w&G)J1JE(R96 z!;q|Y)j;FWv#Q41aZkIJ9tYsbTCR9@7bsa}x` z(Iv=opBGpCk1nM&je3KvBTUD|%%kt3_mCCIS5m-DY7U%JI%?*m7W;F5oRr*?Y9i;P zzmCG#M1LE+q-p{wim0Vvp=VLSR9htFXW8**MN@fLPsP}TUEeC~C1koBSo0D$5q}em z2lixg2xB~=bDI_x3wO*qb^^E-*u~fi45o(J>5k)SM!oE5MViF7>RemDv2FgLJm}-_ zCx3Suwy*CRsyYaU@g*RpBuR5ecf8RMD5NPMQPU!lFo@T6-(MtY>NrJ9e52V2&o44( zm?L1JPsd_`g`(p}I$*^sGV-wk82b0>Q08x5-p##3ai85{35|Os$>byqS|&HFs%J(&`;!=mKv|0@h&xqp&f3!-5pY`CW8@kV|EipY`c&|;pdO9o|I!G>Ds_8g+ zpibfz22C=XuQHaiF`g^Hw6C#T_@+i>{nopV(?G3ouh%YEU+w%x{Uc#h z_b6=Lb#nL+4MoklyG0uWN=_|$?bChdZ%FAQ=lmVvvImw`uN5!H&Dm&%F%1RQI?F$! zREz6!+kafKVbhKx-lp-EYp(M1Y2D&jiXz;-9PM++evRzTJ)4y}@^7Po499)DoYp=Y zlCi7^Rx#LUQBw)#yM335nV2=Mts7l_sC)LY`VLRBJ;g(sVM?q_Eej*!;^XB&4Zie_ zd2CgBy)gn&)z+1Y?4T>TUsR`JRdJ|=rL+k!ZqjtL;S&3- zUh^{DQ6SQZLjiaO%hEne(;g;It<69yUf(N<+Q*8!F;lJdM8|fqRq0)kwW)O7+3YdBmIV8A&6oe4e z)l#n5hGSlrQsOoXmv&;RKJ5V00Ks7XcI~UzHLp;YXf6Vag#CUKS%1z|>@=N5qGdfvfUIHvr|7F& zoa#m?oKqw7eKl~#@i1L+-((2zifmk0Fg$Nol;5ytM~&Fw+x+6nBOsg+rS>&upHW3# zX@ZG(f;DG-oxQIO7F55vrInEJ*TFksL23BEom~wQQHLdon-yUr{pW*tkn>l6|0u^% zib}&BQOC7W6U2FoVw3*;tqc+j494HnphjC}&+z~KK=e2OW~k%=(wMiiUu e@0$tPP@I2Cg5{5+6BC7Xjx!abK@t{$#{LZ#i3H>T diff --git a/Parsing ZARAHOME/src/extractor автономный для сбора категорий mac.py b/Parsing ZARAHOME/src/extractor автономный для сбора категорий mac.py new file mode 100644 index 0000000..dd72372 --- /dev/null +++ b/Parsing ZARAHOME/src/extractor автономный для сбора категорий mac.py @@ -0,0 +1,71 @@ +from selenium import webdriver +from selenium.webdriver.common.by import By +from selenium.webdriver.support.ui import WebDriverWait +from selenium.webdriver.support import expected_conditions as EC +from selenium.webdriver.chrome.options import Options +from bs4 import BeautifulSoup +import pandas as pd +from urllib.parse import urljoin + +BASE_URL = "https://www.zarahome.com" +START_URL = f"{BASE_URL}/pl/en/" +TIMEOUT = 30 + +opt = Options() +#opt.add_argument("--headless=new") +opt.add_argument("--window-size=1920,1080") +opt.add_argument("--disable-gpu") +opt.add_argument("--disable-blink-features=AutomationControlled") +opt.add_experimental_option("excludeSwitches", ["enable-automation"]) +opt.add_experimental_option("useAutomationExtension", False) + +driver = webdriver.Chrome(options=opt) +wait = WebDriverWait(driver, TIMEOUT) + +try: + driver.get(START_URL) + + # cookies + try: + wait.until(EC.element_to_be_clickable(( + By.XPATH, "//button[contains(.,'Accept') or contains(.,'Akcept')]")) + ).click() + except Exception: + pass + + # раскрываем бургер (если есть) + try: + wait.until(EC.element_to_be_clickable(( + By.CSS_SELECTOR, + "button[aria-label='Menu'], button[data-testid='menu-button']")) + ).click() + except Exception: + pass + + # ждём пунктов меню + wait.until(EC.presence_of_element_located(( + By.XPATH, "//nav//ul//a[normalize-space(text())!='']"))) + + html = driver.page_source +finally: + driver.quit() + +# ── парсинг +soup = BeautifulSoup(html, "lxml") +links = soup.select("nav ul a[href]") # любой href, не только https +print("Всего найдено ссылок в DOM:", len(links)) + +records = set() +for a in links: + name = a.get_text(strip=True) + href = a["href"] + if not name or href.startswith("javascript"): + continue + full_url = urljoin(BASE_URL, href) # /pl/en/... → https://www.zarahome.com/pl/en/... + records.add((full_url, name)) + +print("После фильтрации уникальных:", len(records)) + +df = pd.DataFrame(sorted(records), columns=["URL", "Category"]) +df.to_excel(r"/Users/va1is/src_2024-09-05categories.xlsx", index=False) +print(f"✔ Собрано {len(df)} ссылок → categories.xlsx") diff --git a/Parsing ZARAHOME/src/extractor автономный для сбора категорий.py b/Parsing ZARAHOME/src/extractor автономный для сбора категорий win.py similarity index 100% rename from Parsing ZARAHOME/src/extractor автономный для сбора категорий.py rename to Parsing ZARAHOME/src/extractor автономный для сбора категорий win.py