5

I'm looking to download the reading list I've been populating from iOS (I think this is stored in iCloud), preferably in CSV format. Is this possible? I don't mind getting it in another format, but I'd prefer to get it from the web (I couldn't find iCloud's online interface, is that still a thing?) and not from iTunes.

grg
  • 201,078
user
  • 53
  • 1
    Do you want to be able to download it remotely, or just find it locally on your computer? If you have it synched to your desktop, then I think this answer has a good solution for the latter case. – beroe Mar 30 '14 at 18:01

1 Answers1

4

Print the URLs of bookmarks and pages on the reading list:

defaults read ~/Library/Safari/Bookmarks.plist|sed -n 's/^ *URLString = "\(.*\)";/\1/p'

Print the URL, title, date added, and preview text for reading list items as CSV:

sudo gem install plist csv;plutil -convert xml1 -o - ~/Library/Safari/Bookmarks.plist|ruby -rplist -rcsv -e 'Plist.parse_xml(STDIN.read)["Children"].select{|e|e["Title"]=="com.apple.ReadingList"}[0]["Children"].each{|e|puts [e["URLString"],e["URIDictionary"]["title"],e["ReadingList"]["DateAdded"].strftime("%F %T"),e["ReadingList"]["PreviewText"]].to_csv}'

Lri
  • 105,117
  • The 'defaults' command was exactly what I was looking for, thanks! – user Mar 31 '14 at 18:47
  • All of this is certainly very nice, but when you have already brought the file .plist on a Mac. I have my reading list on my iPhone. How can I bring the reading list on a Mac, or on a PC ? – Nicolas Barbulesco Sep 03 '14 at 13:25
  • many thanks for this nice answer and help this string does not work on the Mac Catalina 10.15 Traceback (most recent call last): -e:1:in <main>': undefined method[]' for nil:NilClass (NoMethodError) ruby --version ruby 2.6.3p62 (2019-04-16 revision 67580) [universal.x86_64-darwin19] – azura net Jun 04 '21 at 15:51
  • @azuranet I just tried the second command in Big Sur. Both the installation of the gems and the command itself worked. If it doesn't for you, please ask a new question with details, and link to the Q&A here for reference. – nohillside Jun 04 '21 at 15:57
  • defaults read ~/Library/Safari/Bookmarks.plist |sed -n 's/^ *URLString = "\(.*\)";/\1/p' Output: Domain /Users/user/Library/Safari/Bookmarks.plist does not exist – BabyBoy Jun 04 '21 at 15:57