2012-04-22 72 views
0

我正在考慮開始一個涉及屏幕抓取各種網站的小項目,我想將這些網站的數據存儲在服務器上的SQL數據庫中。屏幕抓取和SQL數據庫

幾年前,我使用C#和稱爲'screen-scraper'的軟件爲我完成了大部分艱苦的工作,但我不認爲這個解決方案儘管如此最終工作,所以我想這次做得更好。由於我現在不記得的原因,我永遠不能在服務器上運行screen-scraper,並且總是不得不離開我自己的另一臺計算機來進行自己的抓取,然後將數據從這裏上傳到服務器..(也許我只是一個白癡)。

雖然我沒有以前的Python經驗,但我已經聽說過關於Python和Beautiful Soup的非常好的事情。

我最終希望能夠在服務器端運行所有的東西,所以python腳本在某些服務器上24/7全天候運行,以某種頻率更新SQL數據庫。其他代碼也將在服務器上運行,並由用戶調用數據庫中的數據操作等。

我對C語言有更多的經驗,但我不介意學習一些Python,如果它是值得的。我只是想確保我正朝着正確的方向前進..

+0

** SQL **是結構化查詢語言 - 許多數據庫系統使用的語言 - SQL是** NOT **數據庫產品......類似這樣的東西通常是特定於供應商的 - 所以我們確實需要知道你在用什麼數據庫系統.... – 2012-04-22 13:55:46

+0

好吧對不起,我上次使用SQL和C#一起(我不記得是在查詢什麼類型的數據庫,我真的不介意我最終結束了什麼系統使用,只要它可以在服務器上運行,就像我說的那樣,並且與選擇的語言進行良好的交互以進行實際的抓取... – fpghost 2012-04-22 14:42:16

+0

fpghost,我看到你有一個關於* Mathematica *的帖子被刪除(因爲它不是如果你想幫助我們加入Mathematica.SE,特別是[Mathematica Chat](http://chat.stackexchange.com/rooms/2234/mathematica)。 – 2012-07-30 17:57:32

回答

0

Python很好,可能是最受歡迎的選擇。我會阻止美麗的湯,因爲它使用它自己的語法,而lxml使用xpath,如果你學習它,它也將在你的c項目中有用。

+0

感謝您的回覆。 – fpghost 2012-04-23 15:05:19

+0

感謝您的回覆。我能夠用Python編寫一些代碼並讓它在服務器上運行,所以基本上可以直接將它們拖入mySQL數據庫中,並使用它們的帶寬和CPU來執行代碼。我希望我所抓取的內容能夠在您看到的某個網站表格上動態呈現。總之,我需要1)能夠在服務器上執行的代碼,就像運行Python腳本24/7一樣2)這段代碼能夠寫入到服務器的mySQL數據庫中的內容。你提到lxml,那麼'scrapy'會更好地學習美麗的湯嗎? – fpghost 2012-04-23 15:12:33

+0

是的,你可以做所有這些。有些人喜歡scrapy,其他人覺得它不夠靈活。我建議在scraperwiki上查看一些python刮板的源代碼。 – pguardiario 2012-04-24 00:29:02