压缩的Swf文件利用Python解压

博主分享了在尝试修改SWF文件时遇到的问题,由于文件被压缩,无法直接编辑。为了解决这个问题,博主编写了一个Python脚本,利用zlib库对SWF文件进行解压。脚本读取原始SWF文件,解压内容并将其写入新的SWF文件中,实现了对压缩SWF文件的解压处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

想修改SWF文件的时候,突然发现全是压缩过的字符,完全不好改,于是只好自己写了个解压脚本。。。

import zlib


# 3个字节(文件标志,CWS 压缩文件,FWS 未压缩文件):43 57 53
# 1个字节(文件版本号):06
# 4个字节(未压缩文件长度):1A 99 D0 00
# 后面全是压缩后的文件

swf_file_name = "./上古神器2完美版.swf"
decompress_swf_file_name = "./上古神器2完美版_decompress.swf"


def decompress_swf(file_name):
    decompress_bytes = bytearray()

    decompress_bytes.extend(b"\x46\x57\x53")
    decompress_bytes.extend(b"\x06")

    with open(file_name, "rb") as f:
        decompress = zlib.decompressobj()
        f.read(4)
        decompress_bytes.extend(f.read(4))
        file_bytes = f.read(1024)
        while file_bytes:
            decompress_bytes.extend(decompress.decompress(file_bytes))
            file_bytes = f.read(1024)
        decompress_bytes.extend(decompress.flush())

    with open(decompress_swf_file_name, "wb") as f:
        f.write(decompress_bytes)


decompress_swf(swf_file_name)

SWFTools is a collection of utilities for working with Adobe Flash files (SWF files). The tool collection includes programs for reading SWF files, combining them, and creating them from other content (like images, sound files, videos or sourcecode). SWFTools is released under the GPL. The current collection is comprised of the programs detailed below: • PDF2SWF A PDF to SWF Converter. Generates one frame per page. Enables you to have fully formatted text, including tables, formulas, graphics etc. inside your Flash Movie. It's based on the xpdf PDF parser from Derek B. Noonburg. • SWFCombine A multi-function tool for inserting SWFs into Wrapper SWFs, contatenating SWFs, stacking SWFs or for basic parameter manipulation (e.g. changing size). • SWFStrings Scans SWFs for text data. • SWFDump Prints out various informations about SWFs, like contained images/fonts/sounds, disassembly of contained code as well as cross-reference and bounding box data. • JPEG2SWF Takes one or more JPEG pictures and generates a SWF slideshow from them. Supports motion estimation compression (h.263) for better compression of video sequences. • PNG2SWF Like JPEG2SWF, only for PNGs. • GIF2SWF Converts GIFs to SWF. Also able to handle animated gifs. • WAV2SWF Converts WAV audio files to SWFs, using the L.A.M.E. MP3 encoder library. • AVI2SWF Converts AVI animation files to SWF. It supports Flash MX H.263 compression. Some examples can be found at examples.html. (Notice: this tool is not included anymore in the latest version, as ffmpeg or mencoder do a better job nowadays) • Font2SWF Converts font files (TTF, Type1) to SWF. • SWFBBox Allows to read out, optimize and readjust SWF bounding boxes. • SWFC A tool for creating SWF files from simple script files. Includes support for both ActionScript 2.0 as well as ActionScript 3.0. • SWFExtract Allows to extract Movieclips, Sounds, Images etc. from SWF files. • AS3Compile A standalone ActionScript 3.0 compiler. Mostly compatible with Flex. SWFTools
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值