Чтение динамически созданных веб-страниц с использованием python
Я пытаюсь очистить веб-сайт, используя питон и красивый суп. Я столкнулся с этим, что на некоторых сайтах ссылки на изображения, хотя они видны в браузере, не могут быть замечены в исходном коде. Однако при использовании Chrome Inspect или Fiddler мы можем видеть соответствующие коды.
Что я вижу в исходном коде:
<div id="cntnt"></div>
Но в Chrome Inspect я вижу целую кучу HTML\CSS-кода, созданного в этом классе div. Есть ли способ загрузить сгенерированный контент и внутри python? Я использую обычный urllib в python, и я могу получить источник, но без сгенерированной части.
Я не веб-разработчик, поэтому я не могу выразить свое поведение в лучших выражениях. Пожалуйста, не стесняйтесь уточнять, является ли мой вопрос неопределенным!
Ответы
Ответ 1
Вам нужен JavaScript Engine для анализа и запуска кода JavaScript на странице.
Есть куча безгласных браузеров, которые могут вам помочь.
http://code.google.com/p/spynner/
http://phantomjs.org/
http://zombie.labnotes.org/
http://github.com/ryanpetrello/python-zombie
http://jeanphix.me/Ghost.py/
http://webscraping.com/blog/Scraping-JavaScript-webpages-with-webkit/
Ответ 2
Содержимое веб-сайта может быть создано после загрузки через javascript. Чтобы получить сгенерированный script через python, обратитесь к этому ответу