Извличането на ресурси от флаш-файл, trolsoft

Извличането на ресурси от флаш-файл, trolsoft

Вероятно, много програмисти са изправени пред такава ситуация, когато програмата е записано и отстраняването на грешките, както и изходния код се губи. Т.е. готова програма там, но източникът на нейния шибан вдигна и загубени. Като цяло, код, когато сте razderbanit някого да се възстанови изгубеното изходния код на програмата изведнъж извършено от месеци и години. В случай на програми, написани на Flash, има няколко търговски решения за изваждане на различни ресурси (изображения и звук) на SWF-файл. Има и безплатен пакет swftools различни платформи конзола програма, предназначена за създаване на Flash елементи, както и за тяхното декомпилацията.

По-специално, този пакет включва инструменти и swfextract swfdump, за извличане на отделните средства от SWF-файл и да декомпилира файловете да се изброят на съдържанието им на сметището. Недостатъкът на тези инструменти е, че първият не е в състояние да извлича автоматично, след като всички ресурси, от файла (въпреки че някъде в интернет попаднах на една кръпка, която добавя тази функция, но това се отнася за най-новата версия swftools аз не успяха), и а вторият не е в състояние да спаси изсере на двоичен файл.

За да се отговори на тези недостатъци, сценарият е написан на Python, който

  1. Използването swfextract получава списък на всички podresursov в SWF-файл
  2. в списъка, и премахва всички под-файлове с тези ресурси (отново чрез swfextract)
  3. Той преминава през всички извлечени файлове, подбуждане към тях swfdump, и извлича ресурсите (JPG и MP3 - файлове)

Освен това, всички тези операции са извършени в една операция, и резултатите, получени от оригиналния SWF големия брой ресурсни файлове. Част от извлечените файлове могат да бъдат едни и същи и за премахване на дубликати, можете да използвате този пример Програмата

Синтаксисът да се позове на:

swf-extract.py []

питон swf-extract.py []

Filename.swf където първият аргумент е името на SWF файла и втори незадължителен параметър outdir определя пътя до директорията, в която ще бъдат подредени ресурсни файлове намерени. Ако не е посочен този път, извлечените файлове ще бъдат сгънати в същата директория като файлът е разопакован.

Сценарият може да бъде изтеглен от линка по-долу.
swftools пакет се търси тук.
А Python среда живее тук.