From 0bbcfec50ffdb89e0b7566c72234e63929b0857d Mon Sep 17 00:00:00 2001 From: dxxxxxxx <31104430+d380025303@users.noreply.github.com> Date: Wed, 23 Apr 2025 13:20:38 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20add=20source=20=E5=87=A4=E5=87=B0?= =?UTF-8?q?=E7=BD=91=20(#149)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix: coolapk fixed #138 * feat: 凤凰网 --------- Co-authored-by: ourongxing --- public/icons/ifeng.png | Bin 0 -> 19935 bytes server/glob.d.ts | 1 + server/sources/coolapk/index.ts | 5 +++-- server/sources/ifeng.ts | 23 +++++++++++++++++++++++ shared/pinyin.json | 3 ++- shared/pre-sources.ts | 7 +++++++ shared/sources.json | 8 ++++++++ 7 files changed, 44 insertions(+), 3 deletions(-) create mode 100644 public/icons/ifeng.png create mode 100644 server/sources/ifeng.ts diff --git a/public/icons/ifeng.png b/public/icons/ifeng.png new file mode 100644 index 0000000000000000000000000000000000000000..79b837cd18a09559ef722b93a1a27d20bd1c8c60 GIT binary patch literal 19935 zcmd42cT`i~+BFIyq97n3y{UjS0YN$fq5=W}QX?HidMDI`Vg>2arArMh)PxYK^xg?I z^qN3GAfcDb?|k2Rzw?g!jyvxC@2+I*F*1_uz4qE`t!K_>&gW|CYLV!kx{8_#5iv0l z5%Kkl=xUbe6%ome8~?no+s*4Y>1|Tdn>R_x$;fWqzDs`hE(JLS1tk^jJxVGXDhi5w z4EJd0?$guL-=$_`Vz|#ld!PRPKPMq3x&F^h(mSN2ckWYCP~QLl+^+r*(cC6}Li~h; zn1<*E4KWD~@l`t!`*kO8kPwkvclF^AAGJJ*-HasBn1dql(}BsWNI-XbF|sFIEq-6N0BvDx>$u0gR?sZk`=pG}F#H*aE8KS$_w{e4pgoa3w z2%Adu>A~$A|NlKux5rg6Fm@kSeuWRp5v6Vh@*(AE$0y2WvVKhUeGgJ|E&zg!u?0YC zcezpr(~(fP#JVe=l_x-Pb9Ug0XtZBKq0y3Xa7s=wgp=`|jSIfS9+S`$+V-lfU1mc z8Ue{_M~P*sZemAuoso%rhpI7Y^BNQN>~%d_Q$l!g{5zO4^G&5s0SpsQBN<|i@39<7 zl-Z0yrFiEF3TubfOioQURuwl~0jcEd^^ihq>OYAqvg4RD-8WMvE4#wY!@2x^j|a5M zf4IozcsT9XkxBciEbn$du?u!?HkN`NYD?)jLTz@@0Rzhb&2*p3aXo4$b4BHY3zf;E z%pvRQk}IOSmz+RerLwwUPj_c#n~K^a1D^*a zh$9txRuk}buNihmrc7PeV^E7myx#0*=vdjiqhDOt+gSePuf>YQfZ)jUc*7l5liyEG zW^j<&@f%!r(Oo#s2Mt1{*f~W5SDfU@KwjmavGWrr1szk1X+{h6V^D`z-R<=+38t=R zRN(J={u#}S>`@$pO^y~WRw~nuN#(E&w)KgRKu?eKy8Bl|j!U~Z9@46ZwvE5Aw-i4O zr`F>}$!{Odm4X|6uZSqX>VHejGf1Io_AZsjCFp#uvca_YV-dy{`g*yQPon#J%Z5Qd zQGZHny%zePa`qPz0)_-ckE#|rK@u+ftHoDDW1RJ8_p|`zDf1sU!p}qUf7Tz}&wKgj zxuolYM1D!2hsjK=-TUntE>4J^lGMymb6B>fj?k;Vwb=cJL*x#3;wb>vO>i%H0nuIhX|^8_hAZUWSa$cPWW5Bb^TJ?qV^Ou%Y+~@I*k|6W1Ehb zcp40*ZpKlk&cEx|%fyyw#~RwmvzeQ0$=xZAsN6}OKBu6t?iNA{HOX!ncrlWzUKly7 zQoHrIS?NkJs#ELhA4$Tuv9f@B9&xJ^Axa>oY@!$UZW8|whnuQp=PyjWqR|cxCxTV{ zQ-PEZWg-Yl#71$50J(}u-?fNM;D*h@T8q~VYCt%z`hfsJuPdfssj*p-po#DERuok%k}+B$mjII#t4&%T;? z#?J@+h*#|pFc2Kj%V*?QxZ@$vS>X{k#V%h?W*OV&BfIs?*X@c33PH>SkxTd{jlF+& zaK`8}bSm$uzVZZr*+B??ZQ!)?%Co187GUNCDKGiCgR%4XxFTwe(#k7VNSH6J$GPws z>FK*H=F;~t5!P+K-NJ-!PS|8H)Qwmbr;-J?_YSEt66CD@8YMslCk`K}da}NX=yXMv z#c!J|#65oE`xzZx2@PC7Qg$V)k@cywqwW@hKbKI&^*m~-$0yrp!ktv~_C`dCnr3TR zJ1y-`T@Kgucdm$3CR7w3Ra=MTH5N%KZ-F$LlTYA;Z#zCg^qS32iT_NV2?1cu~-EI}gTEep{ zqWZ8uG5HM~Lrd(J@)5x3%B=+>y=en&Fv~wyu zD!bJBR?BZ6qWc5fNk7)Z2KC|-GNHfTE=a>1a9_ZU>qW5fN~*8H=BmCDxebXc#xOpm zK{t=8&J|bBNtzmXbXAZ>JS*gIGm#cj3b*N!#%~WGZAv;jHTe|a2JS*R3``9uQM3Mng^}$sa z=Z))UZC&?8lI%sDCp>#U1=36Oy6MMHF^gm^AD3?3O@iu{opYiiaJC(Mokn-{eLWHY zgNkmCP+!=H$=t!Wbw5Ne`u`8RGV%9*&$_!@Eai>pJepD6*B^b&%j5?*KH@1lq3=h& z775>;TG@8`SeEUepHN=}E?_!!gp$7)l|GS)9^S-N#7ellU}t8M|8$)Br_mW_hBDwV9q<|5 z;9o4YG22a>qo29#OBpGV$c*8H>&_NFaFJja|G<}HIVF*;z4Wi0c-2#=qr;@Qs@&MP zSKDwXUZ@vWtEFhA@qu_7E_SP%zc?dj;HBQ@-I4HktHAr3kPOtXs2)o}6JQZDe3^A1-REI6$;7@0hCm3Dd@@N;>>9<#FTV&K2-ad4NNtRayTni4;!qF~b& zg?Cct*M4XMm}c+m52>PhC_%;zY)XtbXzvQz`T4_GF^{ycC>W?0*+)M1@o$aOK5i_q zJh*?%vC5>;sjpZ#vAXs!MSvsN;0IRA^kdK6C%7W$LoGpcObSAMBBR4}@i@%vipbz# zG}&Q$Q#Zh}AvPXi=g*$Kga>RzJqxvpE?Oa&$Cev%^k=1fH(|7Phn2h(>E!zSzo;)Qy>1 z&rUdNvu$5KK8*1*nK8gj8jmIAYX?U(cIsnyFwzPH*qdH}cmd6z+XeV1M>A-C>zvz<@x!Ce%~P-*VeaXA@&(TU|@F=NBy;{loR#|lY} znfWzM*4V-Mb>Kxg*UtMxUkSdUzmw1XpLxS-P2MKf4_cX51fc=+3lL$#?i0s_#C!ku zWlAcxBB!6>-P95?JaF0b;x#HAlDo!*a=5$~#PizoNS?o#X0i4-gL-rKcHz4u-6{g4 zPQEYgsH$3(H9xl0T4R2hW#TiE`-pFscFjdu@|c}|X+gt!j8ZW_#QsnHq`1Cevui`U zm)-tX1j1XPqQ-DsH^71}P7)#YWI{zZ;=I;1CRA#d`v_U;0Q}+f0)4%_rtiVhK##ud zDM39QCEuMX*8nfFYP#PK>W$_ojSMMp)dsJ<6a!@aC>oBbYU0&#HXMAST#PJhmd&{$ zf_qwcQX7BheO?(Ii*r%}ruz_4_V5Ks#-Wn6L(JJ8b@Dq@r6>JT^GnQ8H&!zlP091} z;0!oVXl9SmAB7sYt)YPh)3|_gyC;F)UJlj*8c@z_ne zKKb3bT3Bhd8(pzS8V3i{lsr_s{V{MRkJ|{l?8h>S$Zc>09B@<9A_jJNnW5NQMAO3Hc z`_Wm3eu$}7)y$zRa{<6SSM_Iq?20H6Lmppn`VRDr7CSnBn3fA9y4imTw&KHD==j1=P^XzGdzKfkRoJpWD@etxy5} zKMg~AhBZ{(A@2B}^~i1aE23jVY$LhvyHWFXL#77!I{DgQ(vEJ#;-vVG3JB=H<|L@5}a^g;Zfi0tp4a_o43qfjI>7Okph3( z=m6KhZ|#3$d9n`D8S;`0&AVFoxG{->4{}UqD5wJ1`_N^%>3)2C`07XXZ%gVDHb@OK zIsEcvh@wodWvd4Td_ONnRaxug1@D$LwL#NCg#~?avG|(KzSv&UvmSF@SST~BX}5cw za%WdBxWN!zyec-1>c!-F$meCCJYV!8U5kiL2 zk7>?0LR>ZAi?R=l1MQc#!Hs9z@>?1Sby$8cu1`sWti$X-(*a*bG5I(u1GNy3mb0_7=D-{oHZeNJsR>|4MPQhDEqO58z_ z5ib%IK216jt^JVWSow-*Jy>~Hz(X!$NH=E<`=6BR=F;!yZ%oApt5`Lc)dVYx*b)5C zhw{-Ew*G!_S7%RJMBts>m~N;~iS_2X<&KMPl=qtO#=^Y0tb-8JfRuDF&K~<)PFvI9 z4jJOl$>F^Mja&nMRWwi^1!jrQHjr+jR6OYJE!VsG-x5D06e%|MYYjz!jT5!xAU-qx zo4EcLnSAe3D{j#W-mzPGu&rBV%KTpBYxR%5;I3P!VZepz0by0P$AKtDb6 z$NEIQBME_1w+!)MAIq2NP{i7-L??SgzEQgofPi1;IE;1Iy0?XXbv#iKOQe*yg(pXx zxpS?3QIE=f`_~bwGT@RV@J@A-tOb%*!c-#$oGjV018|tZirtb|To^Hn!O{V-r(pB7gDWpuDVEAoFPc zM5KgIa2{j6(bzHMfv(Ny5uk3z>L(cf_#3+U--67|lQxFNKFHCJy|ezcDV+7m`=iW+ zDmp^wlKjd%;@8&3OEc4j;!9GKnlvFcC?nX3b1;12qOZEEy1Vf$_@lLX7nwwx`=akn z{_K9JIR0OV`ahePcy-Bz!@2g5 zyi=SXZR-dfUmg$eLN#YwLt&z`LgTPlaY?>M&YC2(#1-cWUqp4n!vzFTJjQv&8WAoh z39llb{G2CzDTpdt51H0xms7bQ`LW?Uu)ss!r;kC`9y!z(A zv!27dZ-A=ae0L9Ypf()4?Yic_D(Ee_?-YTy-42mEP5KbY4Ue=?J8RCM@{C8$y`ZYQ zO%dB7nI#$0=F#W);qnr`ppq}lZo;ZvrV86uOw@44%RcqalJDMVR%5m^T+WnCo1->1 z7YU6!N&5Vz_dQ|g8UOD%2R3Fl7ZG5LC6TN8xtnr{LN22WUsr?-1j>9q6I+;UQlDw2 zfq5$q<;}Hnc-YLb04jGAtPdZ}5;iBZc3u~d4sa3t*ytjWe3r#onOpiu{Xe&ne{wX8 zz;Bw?J|>nvf?ipf7#CaozWh9F*ll{>yaZpO)7sKpyiluy4K<*`yJxf{@#`P zWA*Fd5jFKrIoBgxeN4knDH!A!#no^q76 ze?&2^xH2c4ma5Aa?|bZ@RLun_M#P(%FS}IM5`OlNMkZCplwP0}WZAIqxS;cUb`|jl2>Kx=*MswBy^4T8jZtB zS~Yt1gH{TT3H!;9D~IRoGr99izgMd)EvjHUAQHOd9*cuw^)*Fy<~{_&xCn={$Z)*q z|50No6#-SR!W=SHy_}FXAyLcEj?pqE2M<4(>0=AE0z0pWi0zKg^Be0ISK)t6rnPFN z^G|JIs)BXD?Cp|)E7%wUUjdI3upB5$F?#>Bfh&B2uRQIPv1UnXWK+O~o#GL&i6~J# zenb+;&WFdU$V1s6$hVHJ5_)vVI6!l-1COC6sHeJivnyL&bocO74*2FAycokMxt$X(;1fgn>&{7Sp`>o0 zU{XC5WJ)e5mrToaefAiGf0$qNgezb;;&zXOFJlhaKljwy)^FdgEV#GYIeWtNrTnUe z!%jvf$9nO~h|`eoIOapepzLk(>@Kt8nq;PGiCMBbV+f+l)ev#u8EFftyLXhFl`E*f z0rWa?px<-b)VE;}`TglgXGGuBF{dCuL_Ivrl%+ez0hk^@L_y%?&3TU1|IQ~f4&v#k zYI9h)C3EZ5O@kD6Yv=pB#H|@ne0=P>)O52%6QW(eu+G3jIY2#42t(UDs+AZiJAwQg zGZ)W}_{w%8?!ipfjKQc2YPV>00X@txBOT#|z+S8cn~XlT&7H_n5p1(a!PL7OeVOQ7 zQkCyr;02~h|D*wXMzob&DKRoK|ug=a> znHj}z85uhYYlY=uC2CHZ_~iCV4~3tVM^L?n7z5s+$bb`YH+ey-vCQfhzpT3>ag$wK z8m425O2(3@AhEG;E4l*iAV@!t>oM#H3n~nEU!>dz>kd zmdV99CamzXri#@R^{u{3b8|7Fh|5o_3S<-->hL+vsmFGvPGZch0k);2dn7}eIyJ5K zG1j439tRY!yxjyHqiK&ACMce%%Gj_Ln`GS)?wURnNBwxCQQ2bX<0ft6Bc;PDepn>W z{UEdH`)Wqx;KFhN6X-%#D}EIiljm%VX!?$4z(%MpH*HptztI0bDf63@oi3ZRUO#l< zv$Az{d_VT=sXR_#LXXV@Sp(&a>`vtnTh;Q`7c_43cne+1#iFIU`gdb9TOVhG^%&Bq zuZW(WGuwhxG?%W)R+Hjmv(g{2G3Z0wsd#;`njU#(+h3WcvC9uxXUY9*`pvr*IDu-p zkmoczhz3=Qw=2VvhFQNXbe3aeON>3u`mv2QNga%9jRL2Kc7FY~#+GZCPV=gcro_ zu%5E0t#YVZDjL+bLtO!11%uzvvpx0HNY9Blgpdi{BxPDL#^47G^7E+By6;p*pHoC+ zoPNLCuVM17o@R_An$O!WMgL+fn3BdK=?7f9VA`d)!IXc~K08p^>{YwR>lP$1Y>Je? zgoHEg*+n^y<1oEYK;8$qbF(aI+g!bdi#uAFM%5^;|If#aftz|e3c1gp4}sFArc`F+ z`Q4Jc*BXmvdQa-gq8L_`+%4)GFKC_#AtvgUj+=Kmu3QsYMiqDZ3Of06XZcmnLa+3gQ4hZ=Mr!F6@}Lp4wVst5l}Y>w4kKJ z{fv<}EJH9x7k_D7C;fGop))nr4h9;1<}%0G;LTyB;VId>99_9w%XUlz8+A&APt#@fX?r>q=CR^==1eXhCG>G-yqfAiuGY4zH0N@uuueS&_QILF*-cd|AZI%Z@yVA`umd5%N_Zs#m^3)X>!GwCe}at$ zV*Q23oqyFM4kOR5h>YH`W)UFEgUHrv+C3Yn_%Z0sgrO*sSAo*b*?54CdY8}6{&1Uo z?t^)SfL;F+oSoTmHzal{OJ_g;0{YQT7uykWj5AO7P?Ssf=tzLXW&lG~n0N|;u0 zRC`k)M&TmRhqkR5;c|g(tty!`>3q8~0I9f4OD=yYs9aXkvdeEln+g&?(|5f$*0qU4 zE#MOVP=2C19pLD4RUm)(GkYB1;0_)cNn=m)cQ%mG+>!=W9k~bLRi_$94xh)N+#~m! zl8X61Uow)MJ|Xwq)DkmI5p4Wj=HfV#d`G!l+*=_o8?Ik5I97knyQpJXON8VNA@{~3 zzM(lEgOf3T|Bdg7^=fym@X`_WUyI33?psT>a_kfEmPd0UhZpJ_c}IH@SS=|a5NZ9T z?$N>GC@y24$6m+|HSz7N&rQzh7;V!*+R=eoDJaA&KE&PhzUf+O9Vz`RIW^uvQs_l@ z;qBRBz}sQ!P*JYc67Ubapt}4v&Qw0Q!@AHA7k`}kjIw7LP8CyYTwK{MYdBvT2@`p znRLU0|Fc9FI!Gx?~TK+3`%Db$mgFmB?HGf^t56AWC%es6w`U%pYmy{&>oUuyUo$$^WJXiXjTI1}JV+nk z<^z9_=i89J0_gxa$~8J<((RjQEX-w?GPN^?ZkY60kuJmdsV+LUzs4uosH8(B8LI0B zKB)mh3?zitiv3+Qmm7DSUnh;}0bQrK7IIaw;NH)sX!Z5n^k_uOQlZt86&Gc<^%KPG zp}esTgi%wcx2SZY(`C>fQphzPB095jO10lC1l<7Yyd;~q6LtFrOGNp$eOX`lAj?{C zYGpNAPr@gpzis{1H?wjPq?UmI$SgoC_3FWnKEsKHU zXH)O+8)s{iL5dsBmr0SQ%(HaA9-N8;-GZ?gQk;5Nl{S#LRrF6P=xptj9zpLIHD#q$Is3h_Yrq>1z2I0dY4skUN zdHAGs@G{{v(M_S_am#^VW3;>fW-&VxFHQ;$nZK=5htFV%D>z}a6*y%U6acs{iDxxu zwf_+zaWuWWwYy$U-89328(=rFwfyTedqrfJDBPxP>=|k;GdpTl4gjmHi8u=RE3O`S zAb-@Xd^g_RtM-Qy6hc&qCr7#!Rf+d3kf~+@I)zA1j;QiER&0_dxBzZ0cx)q}Ly}9C z>oDg~yZ9cb5xs7Fn@xM4^y6$(B45+0hl+8Q-p_JP&-5nesbpl)e+k&7XrRg4DO*L; zTg&7dDl3a@t-+(Y$igjkv0Y(p74JGJ6vn5^g7-Y3rA)~E!M5tVmp?LSC+bs1akTxj znGR9mTZ5c3pI%At(mq4^ToF-TVB4yplf#jN(lc*?9cxY|n0hn7*ZFW@N2j>6Y>#`P zlZ+KonO%=MY>m=)ApiA#!YQNB;jS#TWw|2#cgU@yF;_))K+Dg%afXLa-I0ZD#N#vX zi*4{evxWD8ae;=lSvp-)AaL)@imPlmMuFPH0$1~JP1N&Rzr&pNVH;wG=#%v9CQAC+ ze4;BW^;#RFqhoc7W3}@YW+%OUP&KaesZ ze%jCi2$lVEUz)|Ad99fxMO{sK>79V^oFn>L zLR^5$K>H~$RoK~ZW^s?9cz$AD0}%o}tg-tmO#UPZ^aEREl8{`)q;&d(68|oKV@A6N zJlr<+b)sY(Wh2iuhgKe|fS@1)yFoh|%Ws)8%^XMimE${Xi;_Za?JH|I70i{+RtMIJ z`zOMoh71V=ojLRi(FsP@SAI(ZJ(|0&ZZQjga%KjglLO{;unCe^PM^Cr5087++?IXk zeN(^B&Fj}CLy{P;?pV5Lvfp)%Uc$!V`X_)uZsosmb0orLp9Mx+i$CkfhY zVGU=DhHeJ48{3T>GseCu+)j3J8H$cv`5IY^y{0c9vVn1bganbm_ zji4JKxFE5plNq0jHSW7ucxAL=$ILLGjF`){?MLcTd6GFz`D^zjTCelto%qY_(WlZ4 zTb0!{Zh&<8~*G&6M<4X2mUc*)r$C$fnn;%LFeU-Sa$5+Q2`m4bW>h zHPy>&7I4ewSii_8sC=qWd-uYmiBiHxhHtf17#K3ZEH;~dKu85ODca*WM)TiC z?W#!27?G>lXbOm}2vIpq2R(&yH={4twc^4vzdWQDry1*%W2Pff{UdUnqz_{<5YQ^Y z=*PP?jKiJupr-~u49vDTCiR_-G&Gx`;-MAP4`;N$wAUe{;8HT+s6#Re3mJb_M-5+Q zg^o*i8D#7#J$Os^qAG^_>*|JI>tm|3AE8}5jX>5EwZ73Wm-gMYUdLD@N z^|dIczr)y=Ik*l%Yv16`Ul~utpx*xdyE*KMvl9oY)^2$Y=l9;TV3@X?z!$#_QbKIA zCS7Ey#0O&pmmwABcS|fz!a+f62Qu$2kaGxIY?WM?`}2pV#`8C=9#=m}u2m%o;_1Tc z1_&%jE$TGI=VOh#nk-&@SVFsiS0@#L~hm2Pv-Xg zuTb+^>j!Tcg{|n;-N>D|*{6!*tq8x+D{9%8deGZ?W*es350l|~s=8=Qw%23$W1KQUF>($S=(jt*6Y8{7N zS42_$8v`@b@<|wgl71Vzrg&M13ditzM)((XVOoy>9TZIP<$8jX9;j1IVpl};R4>6-b8~^zyjN*x6wT98;e;iVDOhVP^Zs~J4s)F)l&kkWK6A>H`I2=(t|cDJk)z~ zonsrTMBCigGg>%MjoRj<@0OSGaU)sq)1aF-1B+!BA~9w+qiYRna+XalP)%e&^@EKg z)s**)QVG!H(xXG#hQ|XI8v;Bkvaiy!NRN*03+lsl4~kFdc6^OwKDgo_c~%P1x7?=4 zV#0RcrKP3JX+xeBy8n_hrLW3%MH~cN<1HB$$9C?A#3RwnIF*r{U$YecX5zwy3IRLZ z0X2HtULb}F8BXVtOD-ArNnS|YZ~{a3cb54)(~dNv?h;dzHIMO8fr@Hc8cO+Zj^_NCVkg7Il4CiNis zShs8Y{w;7+h+7^k`fr``r5a<6^`)8L#ehZb^(>#~Zmv9E*7<%{)-qFC_(xBvmd_ls z%dae~rAfofE26L?u?l>I(95y%9K>b4_YU1i_1(b0J-HvFsOoRy zZ6(OuY-D^ zOrIK^NonpBvF`<5WZs>VE^gnntDimSqnOqE*jynq+CeaR%I^D@oBD^~GhTIJ_2sN; zkrehR@M&eP9Y_XZ8^z#0a@YFv5bfvGqF_+QrBvJ#NgRyS~m1ZP*Js3OYcGYS!iTTE(F)e|*&CW>~Pbh4a=d5!#0O#ChQI6<~nh5g5}+*YWs zx9-wqk<@yBG2!VCr-*UCE%Rl`?a;D(dxc@$68IB-PJ-{%MMh z6E4^mx7CG#A-9YBUn$w0)Xh2+F~a4l>?+C5mug8H3S|sv&IiT3$-~217Z4-GSk0hb49Ehd?DqNWj?LK$l(g&qF{}M8x&3IhEkp z+9-`GAVek=Wyzk%YgTiN3)GuG^XM#5Dyx`?wtl-ZaYq%E^bD)m>n` zbhIzq6W^NCYtF}_LKRShBJhAH%@1kA|Iyb6x9@Pp*QcCr{suTt!UmV6x zZfZ`tZOazST`yA)0{y^D1-vp=J3(qZtr(?C8ET4m1pyci`{LXNFnAtw?%fX^IVard z=<-aOw?j_doJm`DKeJxWxFI~qrncNVY;h|+3duf_xeHI>J<9tQ5ch6kW^LUCf*Z7I%c=Oa15&j}PJ(u*qd362(&Wu~%*+qOv zKT$+En@4Z?&15gNl{}gqcUup{dPLS>`SAIjszNS<4mM))%DhlnlVtGv$4mZld;k=rOTqGa$?it zQI)7Tznz2HDf)$sx}u=*kA09ru~tn>06FJ za5;QrIaPZm6L$2(InFyn&hN6o^-#dQOJ!FC@SSh7es=9IFNJ(rW|w0gVzfe4Q-jVb zDi;Z5C9VCY|0t*SQB7^RTxvB`XNzBQq2Y{iI{M$)(SHI1SwUGG%c+q=@gwJ9_0b+K zzqv98)_X6{9n|cH>VS#-MJ<~X_+I*U+fVwK?=u?kV%~u$14SQcZ}CAzt9f(MmtqXU zGiK6YkwtHYZk+xzeFJ#gXanG)4<7hN&7tqXzo8=0KkNF2-xBy$-ZXez%63c{17Jbo9MbAlfBmw zNC(=rOHd>a>ohE{$$9e^{BgEQ>~U>lC@%2V#T*2kGwswE{D@=!4DbKRU0cY#b|(~d zL8G5w+3{5SDo3x#k9is9GkQV&? zm}!4$}ORCc1mvXVVD@-doF8LcM{7|uWQ57@=Sc95wb4=l&bud zMJiCO-Uj7Nc=*G_C3|k^sWigJJkYGz@CFa@v1R5QUzPLOHIIADmJz^D*9ZWhtkN!LzSd$yC18;Vu_gBz8 zQ&?^~6ryqZFUo!I=FOJh=kjQR`3k#>^~dbarQjntw=<^ZjOO?xbFHSTB4Z4r;iZ0E z)FxRKLY|hdhA&Z|sBXN7*t4p9w;~yCVpEfm0MqZM>7XNfaU<=2C9Y{@Jh52#nu94I zSzQ-Y^O12n{Pp>ZEgRvu6=55>XWa+d-|mX3aSdMkWIfft^lE7X+PBE{vsGvynhy72Z}1}V z!^yRdqf%HOkNYSOI_sKRP5our=NG>&HW1xHWwMid65c_*%P)Moo>$aRi7%{=&vEQb z?wn-YaeBqVGEDMfiWq&ZCL&5uvD9>@(P)yl*yS(g8X1!yb$9A_w+VAQoMH?mJRalk z96Z2bI~^Z50Q}6Fpo9xMy!jz;T8XM$DEMZbr-hD3fAKPbg_51w9mo6Oi2CPokpjm8 zxa^!p1@xvbpT)1v?JWOVP)8T3z07189=?0PpUoeFuHBF3N@!!q#LdxDpUYbQ;hkrSUi zKQ6(2RQE-%qrEXRn+_roN>V|THxeE``kY)AYBZ5nq_f4_QN3xQ8q2(8h%~~746X>K z0l+DcO&F!T+S$-ww{`eras@p4Vt+L(Y0w!p7=$Rnj+&1*MZnX~`}WTYfIkh)g$cq% z&_bWp%+Ba_m@o0-Z`5_sAbS0%x_Ix9;keIlW>)o0*E#Cwm(8;C-FfC~A-y3wy3gU$ zkdZDfbk1@Y7~@Vc6U7fm{U%*)7Tf)>Tr~BvUsJ!Zexm&sJ1o zODTtf_-eD5$=b^Fj`%t6y|Tgmh`?xc>uD;IL~6$xj1KsOt>ha`bPP}Tt5S+<&W(U& z%=uzF{0~L^$DTa9pW7-5_Ky3U4jcEl-LmVk>v6#AS*k9ctC9-gxV>T;MKDc7Y19o( z#7`a{G3RePefd`q`_IGQPbGDP97a4v&R zSPl9l*}M-Y)JP!xKET7*IC4z_dQvpmm-i>*Bq_`-dhF}GETJTh{@Ph+MUfA9SZ^z& z$OMR6wQ{-j2W^D#h&t~LMi4}(PO^N}U zud5mbQ~jc{-RJ{+2v5qt&{V$jv_6<4gStT|&@`~oWk*(F*~AJy9qFk9G3pgeK$J&c z(`GsgKSp@}hU`$B{+Qb|yQ$DmYQHJy$G;Up?LBkld9y#D!Y*UGn&p`V876<`_2^?VWf&`ekZ|2Do#BY+EM8=w)wNNYj*Z~_$p4kNX#bcOy}nX z_cClw>smvw#RZVht-4FGrA9Lxh1;7S987~%DHKuSPEMzqH5&UutLMfRLTapxi_PTK zjd7+M(8g}rB=tQuJM?_BM3y$qOV;(-M^a6(o`^f0^P&ayN#!etk0afvt3KTSkksc? zQ1eHjpC%+8Cl8rN+{ftU!M+Ta?TRrP-613!uq}X}QH)P!g%#L5*Ny|!NKZ)t=Y5F$ z;+k2OuS`^JrJ zBAjf_2-fRxc|SWe@1n^C&F|UVzT|e@5Vb4EeYuV4SguC>DD+0WlYLX5ZBFRfQh>~h z;;-eisGTf(l+Wi^nT{TQQjK$CUH%X(1H+R#VrsN%35(ObI2qub~$QudV)@PWu7~UQ*f55Gu%fHT*gawUm5}IBubS zIn1)#B}7{jzz2ved#lUmH-Kd%hf65Ml3Ov;%<}O7cJ)+gUz{j5N7f)3E98J*acm&2 z#=rcwUCUf%`uqtFWC(*cg6rKvjhWV1%mOUWs_-pO!3-7-Bh$iXH!y;pslvdUqRy_p zHjZZ4iWQ}&_q+~lWR$Q~u_=ByksAz@=sdTh9bi&Wgv;^T2*ZzWW@A8kjN0;JX3zQH zaQ~EDxs}gmU2MxMELV~ee9T<$@$TK)+}WpX%S2rKsu}pq3n_)5@LN*Vjc5 zDU?;=OCZr8?`=h0P3~v?n2}XxsqV%2FmX;Ylq@kFS+q9Vnzau(U8-=JpuSZ2M5WbaHqnK73MXjG1MJ`UWlCDH+qz|u1>5R`n{FING| zK=%El_muiq(I($fV=^no2E3-0qE>G$M_^}U=xs<8q>g3OV~4qcC%2q>u32Y>;qD1^ zYuqKc?TI>V3aCcyEPkyN{Ra2|0vk@wH_<1y&b_VcEZoQvFeolk~jt*KOE4xbbnuyLpWpS9LYOQFJ;21 z+FiA#VG}uRXo~Lr*b95nq4ghN_pdhCUxU2X-Oj{WSdH_N@poHl<0PhKy7~C*pXM>< zC=c4l&YYn!cySP*HN;7J&{qq(!N9Eu*YGK))BD{s zvhAyY5p{@^_!|f~7{~HzWpwMWCvU?m-ue01j2E1wA2WMM<9IMFL?+g-V^$Z`E%Kb% z*C#T2Knu{TkWG&(J-$DTezMC&9Y`#o6A*1sNijiOKhn*FOOOVw5?uHmsr!}y4-wu! zvZ?*x&yM908Rl?nUZBR&f0v5s=U*9C%~_FBXHG~})GzUor#pjL@Req*@nvV(mL$x* ze5YG&#A(A^;&WJ@GIZ0=2ZK1&-HQsyC^Cw|+Z956du;}qA=iF=KO+v|pQ{Q{%NlnH zFAtvx^!h0@&+1o{C)vWx*gD;eP}TH~=}(|hqg6Ffn=!e`j^-u-rYSAwiNP;|r-NUF z&u>`CcsDUYn{pBYljTHIMh+S0)`z|2YMwjSM5L6( z?YaBY=?2e{meGJ;n)u-^<(=;O&)MU#qp$4xvk5NcZPs&XkDmG%UB+5J*~#tF_GJW% z4KVdliw$r1mUF7LT}KH)P>N`r5xFqJd&|dFtdTm4FGk`Y-W2Eld{^p+UaMIqSj&oQ{+=IlKA8*o?F-&WQkDW#?^TSwG09n!3Ky5Gs;H;A5K4_&em>FJH|-O z7@}Ex5v_C9wG6q%EMi&lSKvJ0;C+7w?xu)*&)3ic3f40V{NKaKxKtEnib zsz~X#ewp8Uli^5;n9zM7Bn8p3eVFuJx$~*0OyNx9VR#UGyw-SI*w2en4PFlcy^jTD zNlH_&94JhzqruKv?lWf$xbU;-Q`B#BHD7q8$aSWfWaQ_|@-|e~mh?gWydKsdxx{A2 kJm)1Cl-1KBru9|!D|RC k.id).map(i => ({ id: i.id, title: i.editor_title || load(i.message).text().split("\n")[0], - url: i.shareUrl, + url: `https://www.coolapk.com${i.url}`, extra: { info: i.targetRow?.subTitle, // date: new Date(i.dateline * 1000).getTime(), diff --git a/server/sources/ifeng.ts b/server/sources/ifeng.ts new file mode 100644 index 0000000..28fafc9 --- /dev/null +++ b/server/sources/ifeng.ts @@ -0,0 +1,23 @@ +import type { NewsItem } from "@shared/types" + +export default defineSource(async () => { + const html: string = await myFetch("https://www.ifeng.com/") + const regex = /var\s+allData\s*=\s*(\{[^]*?\});/g; + const match = regex.exec(html); + const news: NewsItem[] = [] + if (match) { + const realData = JSON.parse(match[1]) + realData.hotNews1.forEach((hotNews, i) => { + news.push({ + id: hotNews.url, + url: hotNews.url, + title: hotNews.title, + extra: { + hover: hotNews.title, + date: hotNews.newsTime, + }, + }) + }) + } + return news +}) diff --git a/shared/pinyin.json b/shared/pinyin.json index 8a65106..55cc6ad 100644 --- a/shared/pinyin.json +++ b/shared/pinyin.json @@ -41,5 +41,6 @@ "smzdm": "shenmezhidemai", "nowcoder": "niuke", "sspai": "shaoshupai", - "juejin": "xitujuejin" + "juejin": "xitujuejin", + "ifeng": "fenghuangwang" } \ No newline at end of file diff --git a/shared/pre-sources.ts b/shared/pre-sources.ts index a5835ef..f33643f 100644 --- a/shared/pre-sources.ts +++ b/shared/pre-sources.ts @@ -371,6 +371,13 @@ export const originSources = { type: "hottest", home: "https://juejin.cn", }, + "ifeng": { + name: "凤凰网", + column: "china", + color: "red", + type: "hottest", + home: "https://www.ifeng.com", + }, } as const satisfies Record export function genSources() { diff --git a/shared/sources.json b/shared/sources.json index d5d45fd..27fcbf6 100644 --- a/shared/sources.json +++ b/shared/sources.json @@ -466,5 +466,13 @@ "home": "https://juejin.cn", "color": "blue", "interval": 600000 + }, + "ifeng": { + "name": "凤凰网", + "type": "hottest", + "column": "china", + "home": "https://www.ifeng.com", + "color": "red", + "interval": 600000 } } \ No newline at end of file