为什么爬虫程序抓取同一个页面的HTML和实际显示的HTML不同?

为什么爬虫程序抓取同一个页面的HTML和实际显示的HTML不同?,第1张

一定要设置User-Agent

urlConnection.setRequestProperty("User-Agent","Mozilla/4.0 (compatibleMSIE 6.0Windows 2000)")

        我们使用 request 模块获取网页内容的时候,有时候会发现获取的网页内容和网页上不一样,

有些数据并非服务端渲染,而是通过后来加载的数据,某些网站重要的数据会通过Ajax后期加载,

这就分异步传输和异步加载俩个概念。

异步传输模式下,通常在JavaScript中,我们依次检查JavaScript,就会找到真正的网址!

异步加载则是在XHR的选项中获取真实网站地址:

举例豆瓣的影片获取信息:

页面上的内容可以看到,但是爬下来之后却没有:

XHR获取网页加载的内容:

分别检查左边5条记录,就可以看到真实的我们想要的内容。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/6305203.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-20
下一篇 2023-03-20

发表评论

登录后才能评论

评论列表(0条)

保存