HTMLページにすべてのオブジェクト(スタイルシート、javascript、画像) を入れてデータをデータベースに格納する必要があります。 これはsrc属性の にリストされているファイルを単純に取得することで実装できますが、これに対して任意のヘルパーの宝石を提案することができます。Ruby上のすべてのオブジェクトを含むHTMLページを取得する方法
また、このファイルを大部分のブラウザで開くことができる (web archieveなど)にパッケージする方法はありますか?
おかげ
HTMLページにすべてのオブジェクト(スタイルシート、javascript、画像) を入れてデータをデータベースに格納する必要があります。 これはsrc属性の にリストされているファイルを単純に取得することで実装できますが、これに対して任意のヘルパーの宝石を提案することができます。Ruby上のすべてのオブジェクトを含むHTMLページを取得する方法
また、このファイルを大部分のブラウザで開くことができる (web archieveなど)にパッケージする方法はありますか?
おかげ
をチェックしてくださいあなたはこの仕事をするmechanizeを使用することができます。
require "rubygems"
require "mechanize"
url = "http://stackoverflow.com/"
agent = WWW::Mechanize.new
page = agent.get(url)
page.search('img[@src]').each do |image|
src = image["src"]
image_file = agent.get(src) if src
# Store image_file data it in database ...
end
page.search('link[rel="stylesheet"]').each do |css|
src = css["src"]
css_file = agent.get(src) if src
# Store css_file data it in database ...
end
page.search('script[type="text/javascript"]').each do |script|
src = script["src"]
script_file = agent.get(src) if src
# Store script_file data it in database ...
end
あなたはまだ例外を処理し、相対のsrc属性を持つリソースを修正する必要があります。しかし、これは仕事をする必要があります。ただし、このソリューションはスタイルシートで参照されるイメージを取得しません。
いいサンプル – taro