2012-05-22 79 views
1

我使用jsoup來解析鏈接的一些頁面,然後httpclient來測試鏈接,看看他們是否工作。我的網頁上的一些鏈接是,我想忽略這些。Jsoup,忽略與JavaScript彈出鏈接<a href="javascript:OpenPopup()">

當我的代碼試圖從中得到鏈接返回空白。我可以從我的支票中排除所有空白,但有時候可能會在我的網站上創建空白(偶然)的鏈接,我想趕上,以便我可以修復。

所以我想要做的是能夠確定何時鏈接是一個JavaScript彈出,所以我可以忽略鏈接測試在這個特定的鏈接。我的代碼解析的鏈接如下:

private void setLinks(){ 
    String link; 
    try { 
     Document doc = response.parse(); 

     Elements element = doc.select(htmlElementTarget+" a[href]"); 
     for (Element page : element){ 
      link = page.absUrl("href"); 
      if (validateUrl(link)){ 
       linksText.add(page.text()); 
       links.add(link); 
      } 
     } 
    } catch (IOException e) { 
     System.out.println(e); 
    } 
} 

我的代碼的任何其它的批評是值得歡迎的

回答

1

如果href總是javascript:OpenPopup() if語句,你可以只添加一個。

if (page.attr("href").equals("javascript:OpenPopup()")) { 
    if (validateUrl(link) { 
    } 
} 

注意...代碼沒有經過編譯測試。