def setUp(self): self.swf = SWF(cws_bytes) self.tag_short = self.swf.tags[0] self.tag_long = self.swf.tags[1] tag_short_start = len(self.swf.build_header()) tag_short_end = tag_short_start + len(self.tag_short) self.tag_short_original_bytes = cws_bytes[ tag_short_start:tag_short_end] tag_long_start = tag_short_end tag_long_end = tag_long_start + len(self.tag_long) self.tag_long_original_bytes = cws_bytes[tag_long_start:tag_long_end]
def main(): if len(sys.argv) == 2: path = sys.argv[1] io = open(os.path.abspath(path)) base, ext = os.path.splitext(path) if ext == '.swf': from ppswf import SWF swf = SWF(io) print '---- Reading the file header ----' print swf.signature print 'File version ', swf.version print 'File size ', swf.filesize print 'Movie width ', swf.width print 'Movie height ', swf.height print 'Frame rate ', swf.frame_rate print 'Frame count ', swf.frame_count print '---- Reading movie details ----' for tag in swf.tags: print "%s header=%s" % (tag.__class__, BitString(bytes=tag.build_header())) elif ext in ('.jpg', '.jpeg'): import md5 from ppswf.jpeg import JPEG, chunk_names jpeg = JPEG(io) print jpeg for chunk in jpeg.chunks: dump = "%s:" % chunk_names.get(chunk['marker'], 'Unknown') if 'length' in chunk: dump += " length=%d" % chunk['length'] if 'data' in chunk: dump += "md5=%s" % md5.new(chunk['data']).hexdigest() print dump else: print "usage python swf.py <input.swf>"
def setUp(self): self.swf = SWF(cws_bytes)
def setUp(self): self.swf = SWF(open(swf_path).read()) self.jpeg_tag = self.swf.find_tag(swftag.DefineBitsJPEG2)