2016-09-21 4 views
0

Also ich Verbindung fehlgeschlagen bekommen, die diesen Fehler zeigt:faraday Verbindung fehlgeschlagen auf Rake Aufgabe

rake aborted! 

Faraday::ConnectionFailed: execution expired 

Wie kann ich das bekommen nicht meine Harke Aufgabe explodieren und entweder nur versuchen Sie es erneut oder in die nächste Zeile überspringen?

Heres meine Harke Aufgabe

require 'nokogiri' 
require 'open-uri' 
namespace :webtask do 
    task populate: :environment do 
    Event.all.each do |row| 
     tweventname = I18n.transliterate(row.eventname) 
     url = url here 
     doc = Nokogiri::HTML(open(url)) 
     doc.css('.table__row--event').each do |tablerow| 
     table = tablerow.css('.table__cell__body--location').css('h4').text 
     next unless table == row.eventvenuename 
      tablerow.css('.table__cell__body--availability').each do |button| 
      buttonurl = button.css('a')[0]['href'] 
      if buttonurl.include? '/checkout/external' 
       else 
      row.update(url: buttonurl) 
      end 
      end 
     end 
    end 
    end 
end 

Antwort

0

Vielleicht ein Standard-Rettungsblock ist das, was Sie brauchen.

require 'nokogiri' 
require 'open-uri' 
namespace :webtask do 
    task populate: :environment do 
    Event.all.each do |row| 
     begin #Tells rescue where to jump 
     tweventname = I18n.transliterate(row.eventname) 
     url = url here 
     doc = Nokogiri::HTML(open(url)) 
     doc.css('.table__row--event').each do |tablerow| 
     table = tablerow.css('.table__cell__body--location').css('h4').text 
     next unless table == row.eventvenuename 
      tablerow.css('.table__cell__body--availability').each do |button| 
      buttonurl = button.css('a')[0]['href'] 
      if buttonurl.include? '/checkout/external' 
       else 
      row.update(url: buttonurl) 
      end 
      end 
     end 
    end 
    rescue Faraday::ConnectionFailed 
    next 
    end 
    end 
end 
+0

Hallo, Danke für die Antwort, aber ich habe einen Fehler auf diesem, was saugt! –