Веб-браузер показывает правильные значения, но когда я использую Jsoup, HTML не имеет значений - PullRequest
0 голосов
/ 28 января 2012

Я пытаюсь получить некоторые значения с сайта, но эти значения появляются только при использовании браузера, такого как Mozilla. Когда я использую Jsoup, я могу получить HTML с сайта, но без значений, только с тегами.

Это сайт, который я пытаюсь разобрать:

http://www.submarinoviagens.com.br/Passagens/selecionarvoo?Origem=nat&Destino=mia&Data=05/11/2012&Hora=&Origem=mia&Destino=nat&Data=09/11/2012&Hora=&NumADT=1&NumCHD=0&NumINF=0&SomenteDireto=0&Cia=&SelCabin=&utm_source=&utm_medium=&utm_campaign=&CPId=

Я пытаюсь получить значения, которые появляются внутри тегов span:

Если я получаю доступ к предыдущему URL из веб-браузера, я вижу следующие значения: '', 'R $ 2634,22' и 'R $ 2634,22', но когда я использую следующий код, значения исчезают.

URL url = new URL("http://www.submarinoviagens.com.br/Passagens/selecionarvoo?Origem=nat&Destino=mia&Data=05/11/2012&Hora=&Origem=mia&Destino=nat"+
            "&Data=09/11/2012&Hora=&NumADT=1&NumCHD=0&NumINF=0&SomenteDireto=0&Cia=&SelCabin=&utm_source=&utm_medium=&utm_campaign=&CPId=");
Document doc =  Jsoup.parse(url, 100000);
String title = doc.title(); 
System.out.println(doc.toString());

Если я попытаюсь увидеть исходный код через Mozilla Firefox, значения тоже исчезнут. Но если я использую плагин firebug, я могу видеть их.

Спасибо за помощь!

Ответы [ 2 ]

0 голосов
/ 28 января 2012

Htmlunit - это браузер без головы, который отображает Javascript и должен правильно отображать эту страницу.

0 голосов
/ 28 января 2012

Веб-сайт использует JavaScript для заполнения всех значений, которые вы пытаетесь проанализировать. Вам придется использовать библиотеку, которая может вычислить JavaScript на странице. Не уверен, что есть хоть один.

кто-нибудь еще?

...