2013-06-21 20 views
6

Tôi đang làm việc trên một số dự án mà tôi cần một số thông tin từ trang web khác. Tôi đang sử dụng HtmlUnit cho mục đích này, Nhưng vấn đề là tôi không thể duyệt qua các phần tử trên một trang.Làm thế nào để tìm div bên trong div khác bằng cách sử dụng HtmlUnit?

Ví dụ:

<div id="some_id"> 

     <div> 

     <div> 

      <div> 

       ...... 
         many divs in between 
       ...... 

       <div id="my_target_div"> some information </div> 

       ........ 

       ........ 

       </div> 

Bây giờ làm sao có được div với id my_target_div và thông tin nội bộ mà div

+0

bạn đã thử những gì? – acudars

Trả lời

5

Sử dụng getHtmlElementById.

Kiểm tra documentation.

Một ví dụ:

@Test 
public void getElements() throws Exception { 
    final WebClient webClient = new WebClient(); 

    final HtmlPage page = webClient.getPage("http://some_url"); 
    final HtmlDivision div = page.getHtmlElementById("my_target_div"); 

    webClient.closeAllWindows(); 
} 

Source.

+0

Cảm ơn câu trả lời nhưng, tôi đã tự giải quyết nó. Dù sao tôi đang bỏ phiếu cho bạn để dành thời gian chất lượng của bạn trong việc trả lời câu hỏi này, có thể giúp những người khác có vấn đề tương tự. –

2
WebClient webClient = new WebClient(); 
     HtmlPage page; 
    HtmlElement div= (HtmlElement) page2.getFirstByXPath("//div[@id='my_target_div']"); 

này sẽ giải quyết vấn đề của bạn.