2012-07-02 3 views
1

http://support.xbox.com/en-us/contact-us использует javascript для создания некоторых списков. Я хочу иметь возможность анализировать эти списки для их текста. Таким образом, для указанной выше странице я хочу вернуть следующее:Parse javascript сгенерированный контент с использованием Java

Billing and Subscriptions 
Xbox 360 
Xbox LIVE 
Kinect 
Apps 
Games 

Я пытался использовать JSoup на некоторое время, прежде чем заметил, он был создан с помощью JavaScript. Я не знаю, как перейти к разбору страницы для созданного javascript контента.

С чего начать?

ответ

1

Вы захотите использовать библиотеку HTML + JavaScript, такую ​​как Cobra. Он будет анализировать элементы DOM в HTML, а также применять любые изменения DOM, вызванные JavaScript.

1

Вы всегда можете импортировать всю страницу, а затем выполнить разделитель строк на странице (используя возврат и т. Д.) И найти строку, содержащую эту информацию, затем вернуть нужную строку и вытащить фрагменты из этой строки. Это грязный способ сделать это, не уверенный, есть ли чистый способ сделать это.

0

Я не думаю, что текст сгенерирован javascript ... Если я отключу javascript, то эти параметры можно найти внутри html в этом месте (селектор jquery только потому, что было легче писать вручную, чем вычислять XPath без JavaScript включен :))

'div#ShellNavigationBar ul.NavigationElements li ul li a' 

Независимо от прямого ответа на ваш запрос, вы должны оценить JavaScript в пределах объема документа, который я ожидал бы довольно сложным в Java. Вам больше удавалось идентифицировать файл javascript, создавая соответствующий контент, и просто разбирать его напрямую.

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