Skip to content

rembish/cfb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CfbIO TravisLink

CfbIO provides access to internal structure of Microsoft Compound File Binary File Format.

Module operates with input file like standard IO module in Python. You can seek, read and maybe one day write those files, like all other file-like objects. Also module grants access to internal directory structure containing Entries, which are also standard readable/seekable objects.

So, your work with this module is very simple:

from cfb import CfbIO
from cfb.directory.entry import SEEK_END

doc = CfbIO("tests/data/simple.doc")

root = doc.root
print(root.read())  # Read whole root entry buffer

some_entry = doc.directory[1].left
some_entry.seek(100, whence=SEEK_END)
print(some_entry.read(100))  # Read last 100 bytes from left sibling

All classes are lazy, so you can read really big files without memory leaks. All data will be read only, when you will want it.

About

Microsoft Compound File Binary (CFB) file format Python IO

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages