1

Mechanize に基づいた Web サイトをスパイダーするスクリプトがあり、キャッチできないエラーのように見えるものを除いて、うまく機能しているようです。'Errno::ECONNRESET' これは接続をリセットしてエラーを出力するようですが、例外は発生しないようです。これに対処する最善の方法は何ですか?以下に、プログラムの流れを擬似コードで示します。

while LinksQue.notEmpty
  begin
    mech.get(LinksQue.nextLink)
  rescue Mechanize::ResponseCodeError => e
    puts e.response_code
    puts "this is a bad link"
  rescue Errno::ECONNRESET
    #This doesn't work
  end
end

私の問題の一部は、リンクを「訪問済み」または「不良リンク」としてマークする方法がDBであるため、レスキューブロックでDBを更新できない限り、同じリンクを何度も試行し続けることです。

4

0 に答える 0