インデックスを作成したいサイトはかなり大きく、1.x 百万ページです。私は本当にすべての URL の json ファイルが必要なので、それらに対していくつかの操作 (並べ替え、グループ化など) を実行できます。
基本的な anemome ループはうまく機能しました。
require 'anemone'
Anemone.crawl("http://www.example.com/") do |anemone|
anemone.on_every_page do |page|
puts page.url
end
end
しかし(サイトのサイズのせい?)しばらくすると端末がフリーズしました。そのため、MongoDB をインストールし、以下を使用しました。
require 'rubygems'
require 'anemone'
require 'mongo'
require 'json'
$stdout = File.new('sitemap.json','w')
Anemone.crawl("http://www.mybigexamplesite.com/") do |anemone|
anemone.storage = Anemone::Storage.MongoDB
anemone.on_every_page do |page|
puts page.url
end
end
現在実行中ですが、朝に戻ったときにjsonファイルに出力があると非常に驚かれることでしょう-MongoDBを使用したことがなく、ストレージの使用に関するアネモネのドキュメントの部分が明確ではありませんでした(私には少なくとも)。以前にこれをやったことがある人は、ヒントを教えてもらえますか?