2012-10-02 114 views
3

我目前已被分配創建一個Web爬蟲來自動執行一些報告任務。該網絡爬蟲必須使用我的憑據登錄,在不同的字段中搜索特定的內容(有些與當前日期有關),下載包含數據的CSV(如果有任何可用數據),快速解析CSV以獲得快速數字計數,創建一封附有CSV的電子郵件併發送。解決此網絡爬蟲任務的最簡單方法?

我目前對C++和Python非常熟悉,在學習C的過程中,但我被告知Ruby或Ruby on Rails是一種很好的方法。 Ruby on Rails僅用於創建Web應用程序,如果是這樣,我的任務是否適合Web應用程序的描述,或者我可以創建一個獨立的程序來運行並完成所有工作?

我想知道哪種語言最容易編碼(具有易於使用的模塊),相對於這些任務具有良好的庫/模塊。在完成這項任務之前我需要考慮什麼?我一直到12月底才能做到這一點,而且我每週只能在這裏工作12個小時左右(我是一名學生,這是我的實習)。這是可行的嗎?

謝謝。

+0

你並不需要爲此構建一個web應用程序。 Python,Ruby或其他語言的獨立程序都可以。 –

回答

5

你已經知道Python了。 CSV解析和郵件發送是非常簡單的任務,我假設你可以用Google來解決這些問題。

至於網頁抓取?使用Mechanize

+0

你擊敗了我44秒機械化! +1 – inspectorG4dget

+0

哈哈......我也是! –

+0

我<3 Python但從來不知道機械化。到現在爲止,我已經手動處理了與HTML表單的解析和交互。謝謝@chomp! – bohney

0

儘管這不是一個很好的問題,但由於你是一名學生,而且是實習生,所以看起來好像它會以低劣的形式來標記它,或者反對它投票。 :)

基本上,你幾乎可以用你列出的任何語言完成這項任務。如果你想學習Ruby作爲你實習經驗的一部分,那麼這可能是一個偉大的項目和一種學習方式。但是,python會很好,也可以使用Mechanize。我應該透露我是一名Python開發人員,我喜歡它。我認爲這是一個偉大的語言,有很好的支持和工具。我敢肯定,Ruby傢伙對他們的語言也一樣。再次,我認爲這是你想在你實習期間想要完成的。你想帶走什麼經驗等等。祝你好運。

1

添加到機械化:

如果你的頁面有機械化不能處理一個JavaScript組件,硒驅動一個實際的Web瀏覽器。如果你非常喜歡使用ruby,你也可以使用WATIR,但是硒同時具有ruby和python綁定。