By

Exporting Google Chrome reading lists...

Introduction

As I’m sure many of us do, I spend far too of my evenings catching up on news, sports & tech on my mobile.

And whilst there’s a awful lots of dross out there, on occasion I’ll find the odd gem worth bookmarking later.

Bookmarking on mobile is painful so I’ll add to my reading list and sort it out later on my laptop.

Later invariably ends up being a year later, and results in 200+ items in my reading list 😲!

[Trying] to export my Reading List

Okay, so we’ve got 200 items in our reading list. No problem, we’ll just export them out like we do with [mobile] bookmarks and import them into our remote bookmarking service 👍🏻.

How often seemingly simple things turn out not to be so simple 😔.

It turns out there’s no direct export facilty in Google Chrome. Okay, no worries, let’s just use Google Takeout, yeah!

It’s really easy to use and after a time I’ve got my reading list.html exported, yeah!

And then I opened it 🥹.

Your data is encrypted and cannot be exported

It turns out that several years ago I turned on passphrase encryption for synced data.

Now I could turn off the encryption, export the reading list using takeout, and then turn encryption back on. Bit of a faff, and as regulars to toepoke know, we’re all about losing the faff! 😁

Finally!

Sadly Chrome doesn’t store the reading list in a nice folder structure on your local machine. However it does expose them internally.

  1. Open a new tab
  2. Navigate to chrome://sync-internals/
  3. Click the Search tab
  4. Search for Reading

This will show the results of all the items in your

Reading list search results
200+ wasn't too far off! 😁

This is where it gets a bit funky!

  1. Open DevTools (CTRL+SHIFT+J in Windows)
  2. Paste the code below into the Console window

    Chrome may disallow this (which is a “good thing”) and ask you to enter “ALLOW PASTING” or something to that effect.

  3. The snippet will extract all the links and write them to the console, and copy the output to the clipboard.

You’ve now go your reading list exported, yeah!

Snippet to extract reading list

Either paste the following into the console window, or save for future reference as a snippet.

var output = "";
var list = document.querySelectorAll("#sync-results-list li");

output = "<!DOCTYPE NETSCAPE-Bookmark-file-1>";
output += '<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">';
output += '<TITLE>Reading list export</TITLE><H1>Reading list export</H1>';


list.forEach (li => {
    output += "<a href='" + li.innerText + "'>" + li.innerText + "</a><br/>\n";
});

output += "";

console.clear();
console.log(output);
copy(output);

Importing into TagPacker

I’ve used tagpacker since Google killed off Google Bookmarks 😡.

Whilst TagPacker has an API we could use to add our reading list items, it’s a bit of an overkill. Besides we don’t have any metadata in our export to use to tag our links sensibly.

Instead we can simply import the links directly and tag them manually:

  1. Open your tagpacker account
  2. Click Import Links
  3. Click Upload File
  4. Click Start Import

    You can add a tag to the import so you can find them later and better tag each article. Alternatively they’ll end up in your Uncategorised pot.

Conclusion

Congratulations you’ve now [finally!] imported your reading list into tagpacker!

Just got tag up 234 new bookmarks now … 😭

Posted in : techie-stuff