mikecharles
4/13/2011 - 6:18 AM

Import your ReadItLater bookmarks into Instapaper

Import your ReadItLater bookmarks into Instapaper

#!/usr/bin/env ruby

# 1. export your RIL bookmarks
# 2. save this file to the same directory where your ril_export.html is
# 3. change username and password in the script bellow
# 4. run 'ruby ril_to_instapaper.rb' in terminal

require "cgi"
require "net/http"
require "net/https"

ril = File.read("ril_export.html")

unread = ril.scan(%r{<ul>.*?</ul>}m).first

http = Net::HTTP.new("www.instapaper.com", 443)
http.use_ssl = true

unread.scan(%r{href="(.*?)".*?>(.*?)<}).each do |url, title|
  puts "#{url}: #{title}"
  http.post("/api/add", {
    :username => "john.doe@example.com",
    :password => "top secret",
    :url => url,
    :title => title,
  }.map { |k, v| "#{k}=#{CGI.escape(v)}" }.join("&"))
end