2014-06-24 75 views
0

我只是想知道是否有更通用的方法來做到這一點。我颳了網頁,並得到它的所有鏈接,問題是他們中的很多都是相對格式化網址變得更容易?

e.g /index.html e.g /home.index.html 

到目前爲止,我已經是試圖通過增加家庭URL考慮到這一點。 e.g .index.html變成www.example.com/index.html等(我需要這樣做,因爲我想連接到每個鏈接使用HttpCLient)

我的問題是有這麼多的帳戶,當這樣做。有沒有更簡單的方法來做到這一點,我錯過了。

感謝提前:)

ps I can get all the links just wondering if jsoup or httpclient 
has a better way of formatting the URLs.  

回答

2

是。該JSoup醫生說您的使用情況:

問題您有一個包含相關的網址,你需要解決絕對URL的HTML文檔。

解決方案

確保您解析文檔(從URL加載時,這是 隱含的)時指定的基礎URI,並使用ABS:屬性前綴 從屬性解決絕對URL :

Document doc = Jsoup.connect("http://jsoup.org").get(); 

Element link = doc.select("a").first(); 
String relHref = link.attr("href"); // == "/" 
String absHref = link.attr("abs:href"); // "http://jsoup.org/" 

來源:JSoup Doc

+0

感謝您的答覆,但怎麼辦es將鏈接「index.html」更改爲「www.example.com/index.html」? –

+0

從我讀到的內容來看,如果您指定了根URL,那麼當您使用「abs:href」進行查詢時,文檔中所有相關鏈接都將自動以域名作爲前綴。 – reindeer