2012-04-15 114 views
0

我想從網站中提取數據。說,網址是http://www.example.com/。所以我把這個URL放在start_urls(參考文檔DMOZ的例子)。但是我也想創建一個圖形用戶界面,當我輸入一個字符串並點擊一個按鈕時,它會將該字符串附加到start_urls並提取所有可以像這樣訪問的頁面http://www.example.com/computer/page-1。那麼你能告訴我如何使用循環來做到這一點?我曾嘗試手動將更多網址放在start_urls之間,以檢查它是否有效,但不能很好地響應。有時它沒有迴應。對此有何想法?從網站抓取多個網頁

回答

0

如何使用循環做到這一點?

朋友,這將是一些循環。說真的,我會考慮研究現有的開源腳本和應用程序。你很容易能夠看到並有一個想法如何完成。那麼當然,你可以讓任何你想要的更好的。我很確定有很多很多web spidering解決方案的例子。用我有限的工具集,我可能會嘗試通過某種類型的bash或perl腳本來控制wget,但這是我的,並不一定有利於許多人。

至於'任務'本身,如果你真的想自己編碼,考慮拆分子任務, 有些人會看到2個應用程序來完成這項任務。例如,您可以讓一個應用程序存儲鏈接,另一個應用程序可以是「fetcher」,即蜘蛛。

儘量不要用'循環'來思考。在您的項目的這個階段還沒有循環。

如果你在Linux上或者爲Windows安裝Cygwin/GnuTools,就像我暗示的那樣,我強烈懷疑wget可能是腳本化的,通過文本鏈接列表並獲取css,圖像甚至js。

當然,一旦所有這些在命令行中都能正常工作,那麼您可能需要一個前端以友好的方式訪問它。再次取決於您使用的語言/技術堆棧,您將有不同的選擇。這是我不會涉及的另一個話題。

希望這有助於,歡呼!

概括地說,你可以搜索Sourceforge上,git的樞紐,谷歌等

0

現有的開源Web蜘蛛ressources根據您的需求,Netwoof能爲你做到這一點。可以循環鏈接,多個resutls頁面等......它是完全自動化的,生成API並且甚至可以限定未結合的數據在結構化數據中。