На сайте prostopleer.com есть, вроде бы, возможность скачать целиком музыкальный альбом. Но потом - сюрприз! - скачавшийся zip-файл вовсе не является ZIP-архивом: ни unzip, ни 7z не желают его открывать. Лишь всемогущий mplayer спокойно играет одну пьесу за другой.
Анализ содержимого показал: в начале архива идёт стандартная сигнатура PK♥♦ (50 4B 03 04), но за ней - имена файлов вместе с мусором и сами файлы, без какого-либо сжатия. Достать музыку из такого файла при наличии перла - легко!
#!/usr/bin/perl -0777 -n
=head1 DESCRIPTION
Split big pseudo zip-archive from prostopleer.com into small mp3 files.
=head1 USAGE
./split.pl big-pseudo.zip
=head1 SEE ALSO
L<<
https://gist.github.com/shoorick/7785185 >>
=head1 AUTHOR
Alexander Sapozhnikov
L<<
http://shoorick.ru/ >>
Lshoorick@cpan.orgE
=cut
binmode(STDIN);
my $divisor = "ID3\x04\x00";
my @chunks = split $divisor;
shift @chunks;
my $i = 1;
foreach my $chunk ( @chunks )
open(my $fh, '<', sprintf('%02d.mp3', $i++))
or die "cannot open for writing: $!";
print $fh $divisor, $chunk;
close $fh;
Оно же - на гитхабе:
https://gist.github.com/shoorick/7785185 upd/11.12.13:: Спасибо Игорю Белому
bujhm за наводку - я неделю подкинутую им музыку слушаю, до сих пор нравится и работать не мешает.