Я хочу получить HTML-содержимое веб-страницы, но большая часть контента генерируется javascript.Как я могу получить HTML-код, созданный с помощью javascript?
Возможно ли получить этот сгенерированный HTML (с возможностью использования python)?
Я хочу получить HTML-содержимое веб-страницы, но большая часть контента генерируется javascript.Как я могу получить HTML-код, созданный с помощью javascript?
Возможно ли получить этот сгенерированный HTML (с возможностью использования python)?
Единственный способ, которым я знаю это сделать с вашего сервера, - запустить страницу в реальном браузере, который будет анализировать HTML, строить обычную среду DOM, запускать javascript на странице, а затем добираться до этой DOM движок и получить innerHTML из тега тела.
Это можно сделать, включив Chrome с соответствующим URL-адресом из Python, а затем с помощью плагина Chrome, чтобы извлечь динамически сгенерированный HTML после того, как страница была инициализирована и передана обратно на ваш Python.
Если большая часть контента генерируется Javascript, Javascript может выполнять ajax-запросы для извлечения содержимого. Вы можете вызвать эти сценарии на стороне сервера из своего приложения Python.
Удостоверьтесь, что он не нарушает условия веб-сайта, хотя и получил разрешение.
Оформить заказ Selenium. У него есть драйвер python, который может быть тем, что вы ищете.
+1 Selenium позволяет оценивать JavaScript на после загрузки. Вы можете использовать '$ ('body'). Html()', чтобы получить копию содержимого тела. –
Вы можете сделать это без использования Python или любых скриптов, используя Safari.
Смотрите мой ответ на аналогичный вопрос here
Я не думаю, что это действительное решение. мне кажется, что OP хочет общее решение, которое может быть автоматизировано, т. е. после его подготовки, они не требуют какого-либо взаимодействия с пользователем. ответы, данные до сих пор, похоже, подтверждают это. – andr
Вы в контроле JavaScript, которые генерируют HTML? В этом случае одним из способов сделать это было бы передать HTML как строку на сервер через вызов AJAX, но в чем причина этого? –
Вы можете получить свой HTML-контент с помощью javascript – Chibuzo
Почему downvotes? Это хороший вопрос того, кто даже не знает, с чего начать. –