Welcome to the world of Substack2Markdown, where your favorite Substack posts can be effortlessly transformed into Markdown and HTML files! Whether you’re an avid reader or a content creator, this tool is designed to make your life much easier. In this article, we’ll walk you through how to set it up, run it, and troubleshoot any issues you might face.
What is Substack2Markdown?
Substack2Markdown is a Python tool that allows you to download both free and premium Substack posts. By converting them into Markdown files, it enables an easy-to-read format while retaining the essence of the original content. Plus, it even features a simple HTML interface for browsing and sorting through your posts!
Getting Started
Ready to dive in? Follow these steps to set up Substack2Markdown:
Installation
To get started, you’ll need to clone the repository and install its dependencies. Follow these commands:
git clone https://github.com/yourusername/substack_scraper.gitcd substack_scraperpip install -r requirements.txt
If you prefer to work in a clean environment, you can optionally create a virtual environment:
python -m venv venv- Activate it:
- For Windows:
.venv\Scripts\activate - For Linux:
source venv/bin/activate
For the premium scraper, update config.py with your Substack email and password:
EMAIL = your-email@domain.com
PASSWORD = your-password
Note that you’ll also need Microsoft Edge installed for the Selenium WebDriver to work properly.
Usage Instructions
Once you’ve installed the tool, it’s time to convert some poetry into software magic. Here’s how to do it:
Scraping Posts
You can specify the Substack URL and the number of posts you’d like to save:
- To scrape a specific number of posts:
python substack_scraper.py --url https://example.substack.com --directory pathtosaveposts --number 5 - For free Substack sites:
python substack_scraper.py --url https://example.substack.com --directory pathtosaveposts - For premium Substack sites:
python substack_scraper.py --url https://example.substack.com --directory pathtosaveposts --premium
Analogy for Better Understanding
Think of Substack2Markdown as your own personal librarian who meticulously goes through a library of books (Substack posts). The librarian doesn’t just collect the books; they carefully translate each one into your preferred format (Markdown) and organize them in a neat, accessible manner (HTML files). The process of scraping posts is like instructing your librarian exactly which books you want and how many you would like to read. Whether you have a membership (for premium content) or not (for free posts), your librarian is ready to help!
Online Version
If you want a hassle-free experience without any installations, there’s an online alternative: Substack Reader. To use it:
- Visit Substack Reader
- Enter the Substack URL you wish to access
- Click Go to view the content directly or Export to download Markdown files.
Keep in mind that this online version only supports free Substack content.
Troubleshooting
If you encounter any issues, here are some common troubleshooting tips:
- Check if your Substack email and password in
config.pyare correct for the premium scraper. - Ensure you have all the required packages installed via
pip install -r requirements.txt. - Confirm that you are using Microsoft Edge for the Selenium WebDriver.
- Make sure your specified URL is correct and accessible.
For more insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.
Viewing Markdown Files
To read Markdown files in your browser, consider installing the Markdown Viewer browser extension. However, we also save the files as HTML for easy viewing. You can simply toggle to HTML on the author homepage.
Conclusion
At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.
Now that you know how to use Substack2Markdown, why not give it a try? Happy reading!

