爬取JS加载数据的网站,获取不到网页最终显示的数据
爬取JS加载数据的网站,获取不到网页最终显示的数据
在网页输入url, 网页显示的数据是0%,但是当鼠标在页面往下滑动的时候,数据开始加载从0%开始变化,最终停在了6%,当我爬取这个数据的时候,实际获取到的还是0%
后面继续查看页面的源代码
发现在源代码的js标签内容中有这样一小段
包含网页内容的元素标签
请问如何通过python获取页面上的6%
整个JS加载的逻辑
<h3 class="orange"><span id="number05">30.00</span>%</h3>
补充, 查看了下网页的源代码,略微看了下JS部分
因为对JS完全不熟,只是刚好的JS代码中看到出现了网页内容对应的html元素标签名: class=numnber05
自己理解如下,源码中JS是如何加载6%的数据的
> 1. 定义初始值
var numberInitial = {
scor1: 0,
scor2: 0
}
2. 创建JS函数
TweenLite.to(numberInitial , .5, {
score2: 6, # 对score2 重新赋值
onUpdate: function () {
showScore([$("#number05")], ['score2']) # 这段代码自己猜的意思应该是 将 socre2重新赋值后的数据,赋值给绑定的对应的html元素标签class="number05"的内容里
}
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
可以考虑结合使用selenium
如果
这个score2已经是你爬取时已经出现的html或者js文件里面了,这个对应关系存在的话,也可以改为直接用正则获取这个JavaScript里面的变量?
这个要去分析鼠标移动过程中页面处理,hook相应过程,获取到结果才行,这个不是静态页面,直接爬起没有意义的。