Ruby open_uri всегда 404. (разрешить https перенаправляет git-версию)

Я использую модуль open-uri, который позволяет перенаправления https.

Я пытаюсь открыть каждую страницу из домена. Я делаю это, сначала сканируя его через анемон:

require 'anemone'
require "./open_uri"

class Query
  def initialize()
    fs = File.read("file.json");
    string = JSON.parse(fs);
    string["items"].each do |item|
      Anemone.crawl("http://" + item["displayLink"] + "/") do |anemone|
        anemone.on_every_page do |page|
          #p page.url
          begin
            OpenURI.open_uri(page.url) do |f|
              f.each_line do |line|
                p line
              end
            end
          rescue                        
            p "404"
            next
          end
        end                 
      end
      p "---------------------------------------------------------"
    end
  end
end

qs = Query.new()

Я пытаюсь открыть его, а затем вывести каждую строку в консоль, однако выглядит так, как будто все напечатано в моей консоли, это 404. Глядя на мой код, это будет означать, что open_uri не сможет открыть ни одну из ссылок, даже если они действительны насколько я знаю.

Что мне здесь не хватает?

Также

rescue Exception=> e
 p e
end

выводит на консоль следующее:

#<OpenURI::HTTPError: 404 Not Found>
  • ОБНОВИТЬ

Как советовали в комментариях, я попытался свернуть ссылки, которые получают ошибку 404, и консоль в выходных данных не возвращает страницу 404. Я перепробовал около 40 возвращенных ссылок, и ни одна из них после того, как они свернулись в консоли, не вернули 404. Есть идеи?

0 ответов

Другие вопросы по тегам