Mobi_Unpack unpacks a non-DRM Kindle/MobiPocket ebook into its component parts which change depending on the type of Kindle/Mobi ebook being processed.

  1. MobiPocket and early Kindle version 7 or less ebooks are unpacked to the original html and images folder that can then be edited and reprocessed by MobiPocketCreator.

  2. Kindle Print Replica ebook as unpacked to the original PDF and any associated images.

  3. Kindle KF8 only ebooks (.azw3) are unpacked into an epub-like structure that may or may not be a fully valid epub depending on if a fully valid epub was originally provided to kindlegen or not.

    NOTE: The generated epub should be validated using an epub validator and should changes be needed, it should load properly into Sigil which can be used to edit the result to create a fully valid epub.

  4. Newer Kindle ebooks which have both KF8 and older versions inside are unpacked into two different parts: the first being the older MobiPocket format ebook parts (see #1 above) and the second being an epub-like structure that can be edited using Sigil (see #3 above).

The Mobi_Unpack program requires Python 2.6 or 2.7 to function properly.

On Windows machines we strongly recommend you install the free version of ActiveState's Active Python 2.7.3 or later 2.7.X version as it properly installs all of the required parts including the tk widget kit and updates the system path on Windows machines. The official installer from python.org does not properly handle this for Windows machines.

On Mac OS X 10.6.X and later and almost all recent Linux versions the required version of Python is already installed as part of the official OS installation so Mac OS X and Linux users need install nothing extra.

To install Mobi_Unpack, simply find a nice location on your machine and fully unzip it. If you have a proper Python 2.6 or later installation on your machine, you should be able to simply double-click the Mobi_Unpack.pyw icon (do not move it away from its associated "lib" folder) and the gui interface should start.

If you would prefer a command-line interface, simply look inside Mobi_Unpack's "lib" folder for the mobi_unpack.py python program and its support modules. You should then be able to run mobi_unpack.py by the following command:

python mobi_unpack.py [-r -s -d -h] INPUT_FILE OUTPUT_FOLDER

where you replace:


   INPUT_FILE      - the path to the desired Kindle/MobiPocket ebook

   OUTPUT_FOLDER   - the path to folder where the ebook will be unpacked

Options:
    -r           write raw data to the output folder
    -s           split combination mobis into older mobi and mobi KF8 ebooks
    -d           dump headers and other debug info to output and extra files
    -h           print this help message

Please report any bugs or comments/requests our sticky forum on the Mobileread website. It can be found at http://www.mobileread.com. Look under E-Book Formats > Mobi > New Kindle/Mobi Decoder: mobiunpack.py.

License Information

Mobi_Unpack
   Based on initial version Copyright © 2009 Charles M. Hannum root@ihack.net
   Extensions / Improvements Copyright © 2009-2012: P. Durrant, K.Hendricks,
   S. Siebert, fandrieu, DiapDealer, nickredding, and bug fixes from many others.

   This program is free software: you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation, version 3.