0
下面是刮板delayed_job的刮板工作在發展,但不是在Heroku
class Scrape
def perform
url = "# a long url"
agent = Mechanize.new
agent.get(url)
while(agent.page.link_with(:text => "Next Page \u00BB")) do
agent.page.search(".content").each do |item|
puts "."
House.create!({
# attributes...
})
end
agent.page.link_with(:text => "Next Page \u00BB").click
end
end
end
在我的本地環境,我可以在鐵軌控制檯運行的代碼,只需鍵入
Scrape.new.delay.perform # to queue the job
rake jobs:work
和它的工作原理完美。
然而,在Heroku控制檯中運行類似的(與工作人員運行而不是耙工作:工作)似乎沒有任何作用。我嘗試在Heroku日誌中記錄一些行,並且我可以獲取url變量以記錄日誌(因此該方法至少會被調用),但「。」在每次我們運行while循環時都會顯示,並且在數據庫中不會創建房屋。
任何有什麼想法可能是錯的?