one2html lets you convert OneNote® files (sections or whole notebooks) into HTML.
At the moment only installation from source is supported. This requires the latest stable Rust compiler. Once you've installed the Rust toolchain run:
cargo install one2html
Note: By default, One2HTML has support for printing stack traces when
errors occur during OneNote file parsing. This however requires a nightly
compiler. To compile with a stable compiler instead, add the --no-default-features
flag to the cargo install
command.
OneNote files can be retrieved using one of two methods: Either by
using onedrive-cli or by downloading a notebook via the OneDrive web UI.
To do this first install onedrive-cli
following its instructions. After
logging in using onedrive-cli login
, you can download a section (a single
.one
file), or a notebook (a folder that contains a .onetoc2
file along
with other .one
files):
# Download a notebook
onedrive-cli ls Documents/
onedrive-cli cp -R :/Documents/Notebook .
# Download a section
onedrive-cli cp -R :/Documents/Notebook/Section.one .
Alternatively, to download OneNote notebooks via the OneDrive web UI, follow these steps:
- Visit https://onedrive.live.com/
- Select the folder that contains your notebooks. Typically this is the Documents folder.
- Use the Download button from the toolbar to download a ZIP file that contains all of your OneNote notebooks.
OneNote sections are stored in .one
files. To convert a section
to HTML run:
one2html -i Section.one -o ./output_dir/
OneNote notebooks are stored as folders that contain a .onetoc2
file along with the notebook's sections stored as .one
files.
To convert a notebook to HTML run:
one2html -i 'Notebook/Open Notebook.onetoc2' -o ./output_dir/
- Due to limitations of the OneNote parser only files downloaded from OneDrive are supported. This means you can't convert files created by the OneNote 2016 desktop application using this tool.
- Ink drawings are not supported at the moment.
- Math formulas are not rendered properly at the moment.
This project is neither related to nor endorsed by Microsoft in any way. The author does not have any affiliation with Microsoft.