我是Ruby on Rails的新手,想要創建一個抓取數據並將其插入數據庫的抓取工具。我目前正在使用Heroku,因此我無法直接訪問數據庫,並想知道將爬蟲腳本集成到RoR框架中的最佳方式是什麼。我將使用每小時或每日cron來運行腳本。插入Rails數據庫
0
A
回答
0
我建議1 2的選項:
使用了一個
require rubygems
你想要完成的任務,其他輔助庫(不管喜歡的Rails,ActiveRecord的),然後沿cron的Ruby腳本那個腳本。如果您使用Rails還提供Web應用程序,請使用計算機的hosts文件,以便該計算機上的
wget
(或類似)將正確地將請求映射到該實例的rails;從那裏,只需將其設置爲一個Web應用程序,並在您的CRON中使用wget
命令。效率不是非常高,但如果您只是在現有設置的基礎上尋找快速和骯髒的東西,那很好。只需確保將STDOUT
和STDERR
發送到/dev/null
,這樣您就不會累積CRON文件。
2
如果你在Heroku上使用Rails,你可以使用像Datamapper或ActiveRecord這樣的ORM適配器。這樣可以讓你訪問你的數據庫,但通過一個圖層基本上。如果您需要將原始SQL發送到數據庫,您可以但通常不推薦使用,因爲ORM提供了幾乎所有您需要的東西。
你基本上只需在你的rails應用程序中創建模型,就像普通表格和表格中的相關字段一樣。
rails g model page meta_title:string page_title:string
rake db:migrate # This has to be run on heroku too "heroku rake db:migrate" after you have pushed your code up
然後在你的履帶式腳本,你可以只用你的模型創建記錄......
Page.create(:title => crawler[:title], :meta_title => crawler[:meta_title])
通常情況下,你可以使用每當(https://github.com/javan/whenever)至管理你的cronjobs,但在Heroku我不確定它是如何工作的,因爲我之前沒有設置過Heroku。
相關問題
- 1. 插入數據庫
- 2. 數據庫插入
- 3. 插入數據庫
- 4. 通過rails命令將數據插入數據庫的問題
- 5. Ajax上傳POST數據沒有插入數據庫在Rails 3
- 6. C#插入數據庫,沒有錯誤和數據沒有插入數據庫
- 7. 插入名單數據庫
- 8. 插入值到數據庫
- 9. 插入到mysql數據庫
- 10. 空值插入數據庫
- 11. 插入sqlite3數據庫
- 12. 插入到MySQL數據庫
- 13. 插入在DB2數據庫
- 14. 數據庫插入與laravel
- 15. 插入數據庫條件
- 16. TDD插入到數據庫
- 17. 插入數據庫與PHP
- 18. 刮板插入數據庫
- 19. 錯誤插入數據庫
- 20. onCreate()與數據庫插入
- 21. Laravel插入數據庫
- 22. NullPointerException對數據庫插入
- 23. 插入MySQL數據庫
- 24. mysqli插入數據庫
- 25. 不插入數據庫!
- 26. 插入到oracle數據庫
- 27. 插入到Access數據庫
- 28. 避免數據庫插入
- 29. yii2插入數據庫
- 30. Wikipedia Graph數據庫插入