Python爬虫(二)——爬虫请求的全部过程

我在整理后面几篇帖子的时候发现,如果不给各位好好剖析⼀下web请求的全部过程,

后⾯我们遇到的各种各样的⽹站⼊⼿会很难。所以,还是先理论再斩天龙。

我们浏览器在输⼊搜索的东西,两秒后我们看到⽹⻚的整体内容, 这个过程中究竟发⽣了些什么?

这⾥我们以Bing为例。在访问Bing的时候,浏览器(通过网络)会把这⼀次请求发送到Bing的服务器。服务器接收到这个请求后会加载相关数据返回给浏览器,这部分数据就是源代码,这些代码被浏览器APP加载、执⾏,最后把结果以文字、图片、视频等形式展示给⽤户。
因此,我们要想获取我们想要的数据就必须拿到这部分源代码,然后再写浏览器执行的步骤,把这部分代码可视化。
获取源代码不难,很多都是不加密的,但是吸引我们的反而是那些加密的!如何从一堆代码里找到加密的部分然后破解是难点之一。也可以说是唯一的难点。所以你需要具备一些基础的编写网页的知识!要不然你看不懂源代码咋办!不慌,我会教给大家!
加密的方式有很多种,咱们以后慢慢聊。
还剩下一些篇幅,我打算跟大家说说浏览器页面渲染数据的方式。
为什么呢?按这个逻辑想,从看到的 文字、图片、视频等信息,我们去找源代码,但是找到以后我们只拿走我们需要的那部分数据,所以,知道浏览器怎么渲染数据的是一个很重要的信息。
也就是说只有知道渲染方式,我们才能从源代码种更方便地获取我们要的数据。

1.服务器渲染

这个最简单,
我们在请求到服务器的时候,服务器直接把数据全部写⼊到html中, 所以我们直接拿到带有数据的html内容。
比如下图,左边是用户页面,右边是源代码( 右击空白页面可以检查网页源代码 ),而数据就在源代码中清晰可见, 这种⽹⻚⼀般都相对⽐较容易抓取所需内容。

 2.前端JS渲染

这种就稍显麻烦了。 这种机制⼀般是第⼀次请求服务器a返回⼀堆HTML框架结构,然后通过这个框架再次请求到真正保存数据的服务器b, 服务器b返回的数据才是我们需要的数据。
如下图,我们在网页源代码中查不到页面数据,此时我们就要借助浏览器的 调试⼯具(F12) 来获取数据。

今天就将这些,前面提到的内容都会在以后讲到。下一期更新还是会隔一天,计划到9月22号更新,下一期讲requests。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值