0

どの URL をクロールするかを制御できる十分な柔軟性を提供するビルド済みの Web クローラーを使用したい Java プロジェクトがあり、クローラーが出力を取得したら、それを配置する場所を制御したい (独自のスキーマを使用した cassandra)。

全体像は、URL のリスト (Google および Bing 検索) をフィードしてから、返された URL をフィルター処理することです。次に、フィルタリングされた URL をクロールするようにします (URL クエリ文字列を変更したい場合がありますが、それは難しい要件ではありません)。結果のhtmlを取得し、Tikaを使用して解析し、データを引き出して保存したいと思います。

私は Apache Droids を見ています。これは、私が言及したすべてのことを実行しているように見えるのでぴったりですが、実際のドキュメントはありません。私はNutchまたはHeritrixを検討しますが、ユースケースはより完全なソリューションのようであり、スキミングの後、やりたいことを行う方法について話しているものは何も見当たりません.

誰もこの種の経験がありますか?ほとんどの場合、いくつかの推奨事項が必要ですが、この種のことを行う例を知っていれば、それもいいでしょう。私はまだ Java にかなり慣れていないからです。

4

1 に答える 1

0

Droids が十分に確立されたフレームワークであるとは言えません。多くの歴史を持つNutchと比較すると、安定性が低く、文書化されていないことが予想されます。ただし、ドロイドの経験はありません。

cassandra にデータを保存する限り、 https://github.com/Netflix/astyanax または Hector https://github.com/hector-client/hectorのいずれかをお勧めします

昨年、Hector を広範囲に使用しましたが、非常にシンプルで使いやすいことがわかりました。Hector での開発は、その前任者である純粋な Thrift/Pelops よりも高速ですが、Hector は、Thrift に期待される本質的なことを実行できるほど柔軟です。

最近、私はより大きなチームによって開発/サポートされ、より大規模にテストされている astyanax にも注目しています。これは私の現在の仕事の分野にとって重要です。ただし、通常、Hector は、新しい cassandra リリースでの新機能の実装においてより高速であるため、どちらのライブラリにも利点があります。

于 2013-05-22T22:59:05.810 に答える