2015-11-13 3 views
0

Я пытаюсь очистить телефонный номер с веб-сайта.HtmlUnit и дешифрование элемента span

Когда я проверить телефонный номер из второго входа, инспектор в Chrome дает мне следующий результат:

<span class="nummer">(012) 34 56 78</span> 
    <span class="suffix encode_me telSelector129112728843_1306868" data-telselector="telSelector129112728843_1306868" data-telsuffix="IDEw"> 90</span> 

Однако HtmlUnit (и Chrome, если я нажимаю «показать источник») показывает следующее :

<span class="nummer">(012) 34 56 78</span> 
    <span class="suffix encode_me telSelector129112728843_1306868" data-telselector="telSelector129112728843_1306868" data-telsuffix="IDEw"></span> 

Любой способ получить последний блок телефонного звонка с помощью Htmlunit?

+0

Возможно, они вставляют данные динамически, точно для предотвращения статического соскоба страницы ... ? –

ответ

0

С последней версией, я получаю это:

try (final WebClient webClient = new WebClient(BrowserVersion.CHROME)) { 
     String url = "http://www.gelbeseiten.de/schneider/hamburg"; 
     HtmlPage htmlPage = webClient.getPage(url); 
     for (Object o : htmlPage.getByXPath("//span[@class='teilnehmertelefon']")) { 
      System.out.println(((HtmlElement) o).asXml()); 
     } 
    } 

, который печатает запись с:

<span class="teilnehmertelefon"> 
    <span class="text nummer_ganz"> 
    <span class="nummer"> 
     (040) 78 80 89 
    </span> 
    <span class="suffix encode_me telSelector129112728843_3662885" data-telselector="telSelector129112728843_3662885" data-telsuffix="IDEw"> 
     10 
    </span> 
    </span> 
</span> 
+0

gotcha. У меня отключен JavaScript. Включение этого делало трюк. Спасибо, в любом случае! –

Смежные вопросы