HTML请求未将所有内容显示为浏览器中的html

时间:2018-11-06 01:12:01

标签: python html urllib

我正在尝试使用Python和urllib获取网站的评论。 我能够获取html,但是,我注意到我使用python获得的html的注释部分丢失了。

这是我使用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 :(得分:0)

This帖子解释了为什么抓取的HTML并不总是相同的; JavaScript可以更改网站的HTML。我曾经看到这种情况的一个例子是,我相信自己的档案馆中没有真正的作品。根据该StackOverflow帖子,您应该改用Selenium对其进行抓取,因为它实质上模拟了用户访问页面时发生的实际过程:用户打开了网络浏览器(您可以使用喜欢的网络浏览器,例如Chrome),然后打开一个页面,然后页面的JavaScript运行(可能通过onload事件。