2

Web サイトをクロールする必要があるツールを実装しています。クロールにはアネモネを使用しており、各アネモネのページではボイラーパイプとノコギリを使用して HTML 形式などを管理しています。

私の問題は、500 内部サーバー エラーが発生した場合、ページがないために Nokogiri が失敗することです。

Anemone.crawl(name) do |anemone|
   anemone.on_every_page do |page|
       if not (page.nil? && page.not_found?)
              result = Boilerpipe.extract(page.url, {:output => :htmlFragment, :extractor => :ArticleExtractor})
              doc = Nokogiri::HTML.parse(result)

       end
    end
end

上記の場合、500 内部サーバー エラーが発生すると、アプリケーションは Nokogiri::HTML.parse() でエラーを返します。この問題は避けたい。サーバーでエラーが発生した場合、このページを無視して計算を続行します。

これらのツールで 500 Internal Server Error と 404 Page Not Found を処理する方法はありますか?

よろしく、ヒューゴ

4

2 に答える 2

0

同様の問題に遭遇しました。質問と回答はこちら

Nokogiri で 404 エラーを処理する方法

于 2013-09-02T20:56:03.673 に答える