Есть ли способ выполнить все Java-скрипты на веб-странице точно так же, как браузер, не указав, какую функцию выполнять? В большинстве примеров, которые я видел, они, похоже, указывают, какую часть JavaScript вы хотите выполнить с очищенной веб-страницы. Мне нужно очистить все содержимое и выполнить все Java-скрипты точно так же, как браузер, и получить окончательный код, который мы можем увидеть с помощью проверки google?Веб-скребок с использованием PhantomJS
Я уверен, что должен быть какой-то способ, но пример кода из PhantomJS, похоже, не имеет примера, рассматривающего это.
Я не уверен, что синтаксис здесь, я сделал 'вар текст = page.evaluate (функция() { возврата document.title +«\ n '+ document.body.innerText; }); 'дает мне текст, но мне нужно с html-тегами, как это было бы видно при проверке. Я не уверен в синтаксисе – Trancey
Если вы хотите, чтобы источник страницы тела с тегами, используйте 'document.body.innerHTML' внутри' page.evaluate' так же, как в любом другом браузере. Если вам нужен полный источник страницы, вы либо обращаетесь к 'page.content' вне контекста страницы, либо получаете' document.documentElement.outerHTML' из 'page.evaluate'. Опять же, PhantomJS - это обычный браузер, поэтому все, что вы вводите в Chrome Developer Tools, вы можете делать внутри 'page.evaluate'. Думаю, вам нужно больше узнать о JavaScript в браузере, чтобы использовать его хорошо. В следующий раз задайте правильный вопрос и сделайте некоторое исследование. –
Я благодарю вас за ваш ответ. Да, я постараюсь найти себя в проблемах, подходящих для этого форума. – Trancey