一千萬個為什麽

搜索

如何使用URLConnection進行導航?

我的應用程序需要一些Web抓取功能。我有URL對象下載所有數據。但是我需要抓取很多頁面並創建許多URL對象,因此我打開了許多連接。如何優化它,所以我可以有一個連接,只導航到其他頁面?

幹杯

最佳答案

據我所知,每個URL必須有一個不同的 URLConnection (這是有道理的,因為底層網絡連接也必須改變)。我嚴重懷疑創建這個對象是你的瓶頸;我懷疑這是網絡時間,但沒有配置文件,很難確定。

對於適量的頁面,我會考慮一個工作隊列(比如使用 ExecutorService )。對於大量頁面,我甚至可能會查看Java版本的 Map/Reduce

編輯:要使Map/Reduce比簡單的工作隊列更好,您需要有多臺計算機可用於進行抓取。

轉載註明原文: 如何使用URLConnection進行導航?