爬虫基本知识
日常操作中打开网页流程:
1. 输入网站URL,按回车键
2. 浏览器发送请求至远程服务器
3. 远程服务器返回数据
4. 浏览器渲染页面展示出合适的页面
- 我们知道我们打开浏览器访问某个网址本质上是向服务器发送了一定的请求,服务器在收到我们的请求之后,会根据我们的请求返回数据,然后通过浏览器将这些数据解析好,呈现在我们面前
- 如果我们使用代码的话,就要跳过浏览器的这个步骤,直接向服务器发送一定的数据,然后再取回服务器返回的数据,提取我们想要的信息。
- 但是问题是,有的时候服务器需要对我们发送的请求进行校验,如果它认为我们的请求是非法的,就会不返回数据,或者返回错误的数据。
- 所以为了避免发生这种情况,我们有的时候需要把程序伪装成一个正常的用户,以便顺利得到服务器的回应。
- 如何伪装呢?这就要看用户通过浏览器访问一个网页与我们通过程序一个网页之间的区别。通常来说,我们通过浏览器访问一个网页,除了发送访问的URL之外,还会给服务器发送额外的信息,比如headers(头部信息)等,这就相当于是请求的身份证明,服务器看到了这些数据,就会知道我们是通过正常的浏览器访问的,就会乖乖地返回数据给我们了。
- 有的时候,我们必须在登录状态下才能得到一些数据,所以我么必须要模拟登录。本质上来说,通过浏览器登录就是po