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