How to export posts from TinyLetter

Peter Rukavina

August 4, 2020 at 4:58 p.m.

From 2014 to 2020 I used the free Tinyletter web app to manage a small mailing list that I used to update Catherine’s family and friends on the progress of her cancer. I made 121 posts in all, starting with this explanation:

Apologies for moving so quickly from handcrafted individual emails to a mailing list, but I was beginning to lose track of who I’d told what about Catherine and her progress, and this seems like a way of doing so that’s sustainable, but without the publicness of a blog, which would make Catherine uncomfortable. Catherine has, however, blessed this alternative.

mark_in_archive.png
mark_in_archive.png
turn_on_archive.png
turn_on_archive.png

I’m writing mostly because I need to write to process things – that’s what my blog is for, and with that off the table, I still need a way of processing things. So I apologize in advance if what and how I write sounds overly technocratic or emotionless; that’s how I’m used to writing, and I’m pretty sure if I just started crying I wouldn’t be able to get the details down as I want to. While I didn’t intend the updates to be anything more than a way to prevent Catherine having to answer the “how are you?” question 100 times a week, together they are also a journal of twists and turns and details long-since-forgotten of life with cancer. Reading my friend Elmine writing about her migration away from Mailchimp today, I was inspired to go to export those 121 posts from Tinyletter for posterity. It turns out that Tinyletter doesn’t have a way of doing that. So here’s what I did as a hacky workaround: First, for each of the 121 posts, I checked the “Show in Letter Archive” checkbox. There’s no way to do this en masse, so I had to edit 121 posts individually:

Next, I turned on the “Show sent messages on your archive page” setting for the Tinyletter account:

With these two done, I was able to see the first page of an archive of my posts at the archive URL, https://tinyletter.com/ruk/archive. I figured out that I could see every post if I modified that URL with some parameters: https://tinyletter.com/ruk/archive?page=1&recs=121 The “page=1” simply says “start on page 1.” The “recs=121” is how many posts I want to see per page: I wrote 121 posts, so that’s why I use 121 here. Finally, from the command line on my Mac I used wget to scrape the entire archive, including any linked images:

wget \n     --span-hosts \n     --recursive \n     --no-clobber \n     --page-requisites \n     --html-extension \n     --convert-links \n     --execute robots=off \n	 --no-parent \n     --domains tinyletter.com,gallery.tinyletterapp.com \n         "https://tinyletter.com/ruk/archive?page=1&recs=121&sort=desc&q="

This took about 20 seconds to run, and when it was finished I had a local archive: two folders, gallery.tinnyletterapp.com holding the embedded images and tinyletter.com holding the HTML of the posts, 121 in all:

tinyletter-archive.png
tinyletter-archive.png

I’ll have to do some more text processing to extract these into a useful chronological archive, but I now have all of the component parts to do that.