Class: Archaeo::UrlRewriter

Inherits:
Object
  • Object
show all
Defined in:
lib/archaeo/url_rewriter.rb

Overview

Rewrites Wayback Machine archive URLs to local file paths.

Used for saving archived pages and their assets for offline browsing. Converts absolute archive URLs into relative paths rooted at a configurable local directory.

Instance Method Summary collapse

Constructor Details

#initialize(archive_prefix, local_prefix) ⇒ UrlRewriter

Returns a new instance of UrlRewriter.



10
11
12
13
# File 'lib/archaeo/url_rewriter.rb', line 10

def initialize(archive_prefix, local_prefix)
  @archive_prefix = archive_prefix.to_s
  @local_prefix = local_prefix.to_s
end

Instance Method Details

#rewrite(url) ⇒ Object



15
16
17
18
19
20
# File 'lib/archaeo/url_rewriter.rb', line 15

def rewrite(url)
  return url unless url.start_with?(@archive_prefix)

  relative = url.sub(@archive_prefix, "")
  File.join(@local_prefix, relative)
end