网站内容抓取(怎么分析网站内容抓取、爬虫?网页开发的开始)
优采云 发布时间: 2021-10-28 06:04网站内容抓取(怎么分析网站内容抓取、爬虫?网页开发的开始)
网站内容抓取、爬虫。大家最早接触http协议应该就是去、京东买东西的时候吧,你会看到很多类似小广告一样的网站。在这些网站上,我们买东西是通过浏览器来完成,那么怎么分析这些页面呢?通过爬虫程序,我们可以知道以往很多购物网站分类的数据。后来随着互联网的发展,网站越来越多,我们抓取的信息也越来越多,从最开始的webdom获取页面内容,到解析网页内容然后分析出所需要的数据。
这就是大家称之为python网页开发的开始。大家都知道http协议,在这个协议上我们要保证传输的数据是安全的,所以一般情况下,端对端的传输才是不可逆的,再加上网站之间不断的调用,就相当于无数台服务器同时读取一个网页内容。所以,在这些特殊的网络环境下面,我们就需要爬虫程序,让程序去保证网页协议上的安全性。
当然,我们也有可能碰到同样的情况,一段时间内我们可能无法爬取到想要的数据。那么我们先来思考一下,什么样的网页需要保证协议的安全性,所以爬虫的设计要尽量从安全角度出发。列举三个可能存在的情况:网站跳转网页抓取网站抓取完即将停止时收到重新加载的连接通过抓取部分结果分析发现,跳转是比较常见的一种。举个例子,比如我们在百度看到的一个页面,按钮的箭头指向我们进入到百度的另一个页面,这个我们称之为“回流”。
如果我们还不能保证数据安全的情况下,还是会跳转的,至于什么时候跳转,可以根据需要来设置一个引导页面,在这个页面抓取出自己想要的内容。有的网站将网页存在多个页面,可能有的是一个静态页面,有的是一个动态页面,在一个静态页面下我们是可以抓取到全部数据的,在一个动态页面的顶部,会抓取到这个页面所有的数据,而在动态页面的底部或者最下方,是可以抓取到部分数据的。
这是动态页面一个比较容易的例子,而静态页面非常难抓取。再比如我们在百度的首页看到一个悬浮窗,这个是指向百度的新页面或者某个独立的页面,如果我们将每个页面都抓取一遍的话,就要抓到这些页面。而且还得考虑不同的服务器的速度是不同的,对速度要求不高的话,可以用selenium。再比如我们在百度的后续页面看到一个按钮,我们在后续页面看到一个链接,这个链接是一个静态页面,这种情况也是可以抓取到所有数据的。
所以,我们在爬取一个页面的时候要先将这个页面分析出来,分析页面的时候可以先弄清楚爬取这个页面到底需要哪些信息,比如上面提到的跳转情况、是否分析到独立的页面、页面内容等信息。如果你对爬虫有兴趣,或者想入行,可以看看猴子聊人物第6期《爬虫精讲》,