この質問は少し紛らわしいです...申し訳ありませんが、質問をもう一度読んだ後、私の答えを読み直してください。
あなたの質問は2つの部分に分かれています:
1.Webサイトをクロールするにはどうすればよいですか
クロールはMechinizeを使用して実行できますが、おっしゃるように、Javascriptはあまりうまく機能しません。したがって、1つの代替手段は、Capybara-webkitまたはSelenium(firefox / chrome)を使用することです。
通常、これはテストに使用されますが、Rubyコードを使用してさまざまなページをナビゲートできる場合があります。
2.出力をPDFに変換するにはどうすればよいですか
クロールされたコンテンツをPDFに変換する必要がある場合、それを行う方法はないと思います。Capybara-webkitまたはSeleniumを使用してスクリーンショット(テストに役立つ)を撮ることができる場合がありますが、それをPDFに変換するには、コマンドラインユーティリティを使用してスクリーンショットを作成するだけです。
真のHTMLからPDFへのコンバーター(通常はRailsアプリのビューからレポートを生成するために使用されます)を探している場合は、PDFKitを使用してください
基本的にはPDFに出力できるWebKitブラウザです。実行するのは本当に簡単です。