Guide
Export formats
Fifteen formats, one crawl. The exporter reads the site once and writes whichever shape the target needs, so choosing a destination is a flag rather than a second export — and switching destinations costs nothing but the write.
| Flag | Writes | Guide |
|---|---|---|
-f json (default) |
JSON documents, media localised to /media/… |
Command line reference |
-f markdown |
One Markdown file per post and page, YAML front matter | HTML to Markdown |
-f ssg |
A drop-in content source: URL-mirroring paths, single-spelled front matter, cleaned body HTML | Static site generator format |
-f shopify |
shopify_posts.csv, shopify_pages.csv, shopify_products.csv, shopify_metadata.csv |
E-commerce formats |
-f magento |
magento_posts.csv, magento_pages.csv, magento_products.csv, magento_metadata.csv |
E-commerce formats |
-f prestashop |
Semicolon-delimited product, post, page, category and metadata CSVs, plus a JSON backup | E-commerce formats |
-f wordpress |
wordpress_export.xml — WXR, the format WordPress imports natively |
CMS and headless formats |
-f drupal |
drupal_export.json plus per-entity node, term, user and media files |
CMS and headless formats |
-f ghost |
ghost_export.json |
CMS and headless formats |
-f strapi |
strapi_export.json plus per-collection article, page, category, tag, author and media files |
CMS and headless formats |
-f contentful |
contentful_export.json |
CMS and headless formats |
-f wix |
wix_export.json |
Website builder formats |
-f squarespace |
squarespace_export.xml — WXR, which Squarespace imports as WordPress |
Website builder formats |
-f webflow |
Post, page, category and author CSVs for CMS collections, plus a JSON backup | Website builder formats |
-f weebly |
weebly_export.xml and weebly_export.json |
Website builder formats |
markdown and ssg both write pages under the path their URL states, so a page
published at /zerowisko/znaczenie/ becomes pages/zerowisko/znaczenie.md.
WordPress page addresses are hierarchical and a slug is unique only within its
branch: written flat, a child page and an unrelated top-level page sharing a
slug landed on one file and one of them was lost (#38). Two documents that still
want the same file — a site whose links are missing, so both fall back to their
slug — are both written, the second with its WordPress ID appended, and the
substitution is reported. The summary states pages written against pages fetched
whenever the two differ.
Two things hold for every platform format, and only for those: media URLs are
left absolute, because the target platform imports the files from the live
site, and address fields (link, canonical_url) stay absolute too. json,
markdown and ssg localise media instead — see
Media and URL rewriting for the per-format contract in full.
Adding --zip to any of them archives the result; --no-files then removes the
loose files, leaving only the archive.