赞
踩
之前我们爬取的网页,多是HTML静态生成的内容,直接从HTML源码中就能找到看到的数据和内容,然而并不是所有的网页都是这样的。
有一些网站的内容由前端的JS动态生成,由于呈现在网页上的内容是由JS生成而来,我们能够在浏览器上看得到,但是在HTML源码中却发现不了。比如今日头条:
浏览器呈现的网页如下图所示:
查看源码,却是如下图所示:
网页的新闻在HTML源码中一条都找不到,全是由JS动态生成加载。
遇到这种情况,我们应该如何对网页进行爬取呢?有两种方法:
从网页响应中找到JS脚本返回的JSON数据;
使用Selenium对网页进行模拟访问
在此只对第一种方法作介绍,关于Selenium的使用,后面有专门的一篇。
一、从网页响应中找到JS脚本返回的JSON数据
即使网页内容是由JS动态生成加载的,JS也需要对某个接口进行调用,并根据接口返回的JSON数据再进行加载和渲染。
所以我们可以找到JS调用的数据接口,从数
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。