2013-02-23 56 views
10

我試圖在我正在處理的Ruby腳本中抓取網頁。該項目的目的是顯示哪些ETF和股票共同基金最符合價值投資理念。Ruby中提供的網頁抓取寶石/工具

我想湊一些網頁的例子是:

http://finance.yahoo.com/q/pr?s=SPY+Profile 
http://finance.yahoo.com/q/hl?s=SPY+Holdings 
http://www.marketwatch.com/tools/mutual-fund/list/V 

你推薦紅寶石什麼網頁抓取工具,爲什麼?請記住,那裏有成千上萬的股票基金,所以我使用的任何工具都必須相當快。

我是Ruby的新手,但我有使用lxml去Python中抓取網頁的經驗(https://github.com/jhsu802701/dopplervalueinvesting/blob/master/screen.py)。一旦5000+股票的頁面被下載,lxml可以在幾分鐘內全部刮掉。 (我記得試圖BeautifulSoup,但拒絕它,因爲它是太慢了。)

+1

雅虎財務實際上有很多API可用,你應該使用其中的一種。 – pguardiario 2013-02-23 09:05:03

回答

22

有在Ruby這麼多scraping gems可以像HpricotNokogiri和這麼多。我建議Nokogiristatic web pages。如果您正在抓取dynamic web pages(意味着按鈕點擊,提交表格等)。我推薦Mechanize,它在內部使用Nokogiri

+0

Hpricot不再擁有維護者。我會推薦使用Nokogiri :) – Jake88 2014-02-22 21:12:37