2010-08-30 27 views
0

我有一個url。 如何知道這個頁面的所有已存在的子菜單。 例如,java知道url的全部subUrls

  1. http://tut.by/car/12324 - 存在
  2. ................ /汽車/ 66666 - 存在`噸

理想的是,在java的。 我已經嘗試過幾乎所有來自java-source.net/open-source/crawlers--沒有人能做到這一點,他們只能通過hrefs去。 Thx提前!

+0

換句話說,你不想抓取,你只是想基於模式猜測?這不是爬行:) – BalusC 2010-08-30 14:17:20

+0

如果我不能找到任何其他解決方案,猜測將是。我想抓取。 – dementiev 2010-08-30 14:23:35

回答

2

如果沒有索引頁,那幾乎是不可能的。雖然許多Web服務器會爲您創建一個HTML索引頁面,如果網站創建者沒有提供這個頁面,出於安全原因,禁用目錄列表是非常普遍的做法。

2

你尋求的是不可能的。服務器在URL中定義了路徑的實際含義,除非您知道有關服務器的大量信息以及它如何處理URL,否則無法「猜測」。

+0

瞭解。所以,我將通過httpClient模擬用戶活動。 – dementiev 2010-08-30 14:41:49

0

我同意,您要尋找的信息將在索引頁中。即有時你會去一個網站並刪除「page.html」部分。 volia可以看到該目錄中的所有頁面和文件夾。

但如前所述,由於安全原因,這通常是禁用的,因此用戶不能四處遊蕩。

因此,你的其他選擇是要麼

A)的猜想,只是不停地嘗試不同的組合,以蠻力的網頁網址,00001,00002,00003等

B)抓取的網站啓動它的根,尋找網頁中的鏈接到網站上的另一個頁面,直到所有的鏈接都被用盡。很顯然,網站上的網頁將不會被找到。

C)作爲所需信息網站的所有者。