Соскоб веб Ваадин питон - PullRequest
       11

Соскоб веб Ваадин питон

0 голосов
/ 16 января 2019

Я пытаюсь очистить сайт, созданный с помощью vaadin, используя python.Это код, который я использую:

requests.get('http://rnb.osim.ro/?pn=').text

, но этот результат не содержит никакой полезной информации:

    <noscript>
    You have to enable javascript in your browser to use an application built with Vaadin.
   </noscript>
  </div>
  <script type="text/javascript" src="./VAADIN/vaadinBootstrap.js"></script>
  <script type="text/javascript">//<!

Знаете ли вы, как я могу получить нужные мне данные от вадина?сайт?

Ответы [ 2 ]

0 голосов
/ 16 января 2019

Если вы уже знакомы с запросами, вам также может пригодиться reports-html . Если вы просто хотите получить визуализированный html и не взаимодействовать со страницей, например, нажимая кнопки, вниз страницы и т. Д., То вы можете использовать эту опцию.

Ваш вопрос идеально подходит для этой демонстрации. Следующий код полностью отображает HTML, который вы хотите.

from requests_html import HTMLSession
session = HTMLSession()
r = session.get('http://rnb.osim.ro/?pn=')
r.html.render(sleep = 5)
print(r.html.html)
0 голосов
/ 16 января 2019

Это происходит потому, что requests не может реально выполнить JavaScript внутри сайта. Как вы можете подумать, requests - это всего лишь запрос, а не браузер, который может обрабатывать JS и работать со средами для внешнего интерфейса (то есть Angular, React, Ajax). Чтобы отказаться от этих современных и надежных сайтов, я лично рекомендую использовать библиотеку scrapy. Он разработан специально для утилизации и может немного справиться с JavaScript. И даже если это невозможно, вы все равно можете использовать selenium web driver для полной эмуляции браузера.

...