HTML-запрос не показывает все как HTML в браузере - PullRequest
0 голосов
/ 06 ноября 2018

Я пытаюсь получить комментарии сайта, используя Python и urllib. Я могу получить HTML, однако я заметил, что отсутствует раздел комментариев HTML, который я получил с помощью Python.

Вот что я использую с помощью python:

<div data-bv-product-id="6810124" data-bv-show="reviews" id="BVReviewsContainer">
</div>

(что между тегами div пусто)

Где, как это должно выглядеть (в браузере):

<div data-bv-product-id="6810124" data-bv-show="reviews" id="BVReviewsContainer">
    <div id="BVRRContainer">
        <div class="bv-cleanslate bv-cv2-cleanslate"> <div data-bv-v="contentList:1" class="bv-shared bv-core-container-437" data-product-id="6810124">
             .
             .
             .
        </div>   
    </div>
</div>

Я смущен тем, почему я не понимаю всего этого.

1 Ответ

0 голосов
/ 06 ноября 2018

Этот пост объясняет, почему очищенный HTML не всегда одинаков; JavaScript может изменить HTML-код веб-сайта. Один случай, который я видел, это произошло, я верю в Archive of Our Own, где фактический объем работы не был доступен. Согласно этому сообщению StackOverflow, вы должны использовать вместо этого Selenium, поскольку он по сути имитирует реальный процесс, который происходит, когда пользователь заходит на страницу: пользователь открывает веб-браузер (вы можете использовать предпочитаемый веб-браузер, например, Chrome), затем открывает страницу, и JavaScript страницы запускается (через возможное событие onload.

...