PDA

Просмотр полной версии : Обработка статьи USENET


Mr.Vector!
13.12.2005, 14:09
шалом всем программерам
Суть проблемы следующий.
Короче, есть у меня файл статьи USENET (см. ниже).
Подскажите мне каким способом можно узнать тип вложения (из названия я вижу, что это видюшник blablabla.avi),
но есть-ли какие-нибудь скрипты, которые сами в состоянии определить тип вложения? (RAR, ZIP, MOV, MPG, MP3)
Жду любых предложений по реализации данной задачи!

Path:
From:
Newsgroups:
Subject: blablabla.avi (21/21)
X-Binary-Poster:
Lines: 1845
Message-ID:
X-Complaints-To:
Organization:
X-Complaints-Info:
Date: Thu, 08 Dec 2005 01:37:58 GMT
Xref:

M[SS[[CJ!9.6U2H@U19A4H\HR*N@95V:,%7HH9M(4['WQ'58GB XJ[]-2/E
M^!8&&"6PR.#H\NDZ.<DG,G&DP_OUH)EYV?4'>'ON=[8447A*H834JR8Q'IB)
M(*%1+_"4XE_'W>/);<ZFT26MRC4PY$V<Z>I"]./WMX+O;E;%AYRCTG*J+R=8
MI]U3**%=2L#-5L+^$QYX&.ZW0MW=X4-D=/O<H1GG)\.P[^*/N5;EP4)VYT;%
M2K"<0T^QYP^Y):OUT&%BNQ($9I&53X&/<)M/HFW3%7@-](BX#_O@:]9XE=W(
M:T,LYY/3T],4]]%#O><=)4C5RJ/J@*BO60F&Y*_;I&?/]YO#]VWUL!8J*3N1
M[SY<?8EX,D@4(&/4,SJ-L=$T_QX!*,6".:'[0D3P,GU/P5Z+T\@#*$9I,L;X
M_8&"JE1L?>$E5_B`B$7F>!EBY&J\+-RXF:XZ$3W)(1O!H>????6W);]:\C..
M(2R!A!%J:_]Y34V'<K+`,5,6"_%*KO9_&=Q11'T44=='B-;IM-*N_LS[/1'6
M=)VZQ@,2",]$RPV>/)<*X.TP,-6EW,[3,+7H8-&2F\A`LR1-SI`HX92=)U,X
M,U`N.R/7J<TCFT&)D1PSBVPVV!@M\+46=G08D;)%-M>!6A_8$R+/<(ZH4#%#
M#90R>N'JG'$0D=`(XY.Z<\;<G/C,QW=PBFGV22GG)EB4AL5<!B3?*FYQX\"&
M"@84RMJEW`/AN1%\]N$@,O<@>C*FGBE/P#E\$`>Z2W6%-U,UU8;E#@J)6Z"`
MTUG^FZT4!*6'LSP@*_"^4;`PS6"4IP8@-EDHE1,'@6#*@LB8@`BER\#WTX*Q
MSJJ%JCAU#%1J]QVU89N3OOBYN7,)X;<TTF0(7#,T7@?'_I@'U:@'Q8`?1BJ9
MHCJ63_8S"\LD&.FTZ9$5$&<1N;`RJ0"K^_`S$?M@P$;\^FHT;;`X!'P,+:"R
M!5(!5P&(A&X'-9'UYH73`^/,C8YRU9N"+@,4GUR00GG!`HL]D!4H@SP##)&"
MU"DYP#(R[%Z-`K!@6AE/@Z)QV&0T.)/,O`RY?B)]5/=T>^]J"@?!AIUH>[<!
MC(4VT?E0/DP`X^`D7`0<!M,@%4Q,6"HZ"T29"5.,I[2[PCBA.6.XG^"J!A8F
M'_^HLR^/*!TT6O"@TF>I?0(U'U$R<1BN9%BVBT9,A^XF1GJ.UQD,CCM*!"@P
ML;9/K$),V5ZIX]R%"G/1.TR[!>?788FQJHA>DMY<!Y0#'?FT@@J@H(/K%6[Q
MLEM4*I=XR-`:"3IT#9*<@)`6P1"V]4!48$B%9T+P@0P33@_,/B;<_;W11<4Q
M-J5SD+=?6-\_@Q3IA5?"*KB"+$-K">>J%PONM("T6-;GTM7)PWP]$Z,6C[./
ОБРЕЗАНО

RaZEr
13.12.2005, 14:20
Если вложение, это ничем не упакованный бинарник, то можно использовать mime-magic. В unix-системах эта фишка встроена.

Mr.Vector!
14.12.2005, 07:18
RaZEr:
Если вложение, это ничем не упакованный бинарник, то можно использовать mime-magic. В unix-системах эта фишка встроена.
А что если это какая-то часть вложенного бинарника (в данном случае 21-ая часть). тогда как быть?!

Sheryld
14.12.2005, 22:59
узнают обычно по сигнатуре, из заголовка...

Hubbitus
15.12.2005, 10:29
Можно глянуть на следующие классы для определения MIME:
http://pear.php.net/package/Mail_Mime/docs/1.2/Mail/_Mail_Mime-1.2_mime_php.html
http://www.pcworld.idg.com.au/index.php/id;1186595404;fp;2;fpid;76768
http://www.liacs.nl/~dvbeelen/MIME.php.txt

Последним я сам пользуюсь, хорошая вещь.

Только полагаю все-таки нужен именно заголовок файла, врядли по середине можно определить тип - там же идут уже сырые данные. Хотя если это архив, то в нем должна быть сигнатура с содержимым в каждом куске, тогда он как архив и должен определиться.