码迷,mamicode.com
首页 > 编程语言 > 详细

Python爬虫学习二------爬虫基本原理

时间:2018-06-15 00:01:25      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:服务器   cookie   mysq   解析   有用   使用   学习   通过   request   

爬虫是什么?爬虫其实就是获取网页的内容经过解析来获得有用数据并将数据存储到数据库中的程序。

基本步骤:

  1.获取网页的内容,通过构造请求给服务器端,让服务器端认为是真正的浏览器在请求,于是返回响应。python有很多请求的库,像urllib,requests库等,个人比较喜欢requests库,很容易上手。

  2.解析获得的数据,可以通过正则表达式,bs4,xpath等解析工具来获得自己想要的数据。

  3.存到数据库,现在最流行的三大数据库,mysql,mongodb,redis都可以通过python相关的库来进行交互。

 

会话和Cookies?

  什么是会话?什么是Cookies呢?这全都要怪罪于HTTP协议,因为HTTP协议是无状态的协议,因此前后两个请求它并不能够知道是不是同一个用户在发送请求,这就可能会导致重复的传递一些请求。这时候会话和Cookies就帮上大忙了。当用户在执行登录操作后,后端服务器会为该用户创建一个会话,会话中包含一个id来标识这个会话,用户的登录状态以及用户的信息,并且将这一标识id通过Set-Cookie字段返回给客户端,当客户端下一次请求需要登录才能查看的网页时,服务器就会检查客户端发过来的Cookie字段,如果能够通过Cookie字段找到用户相应的会话,就会进一步判断该用户的登录状态。通常网站都会有一个会话超时时间,如果会话过期了,就需要重新登录。

  总结的说,会话是在服务器端存储的信息,而Cookie是在客户端存储的信息,会话的作用就是用来维持用户的登录状态。

 

代理

  代理的基本原理是什么呢?代理实际上就是指代理服务器,当我们设置了代理服务器的时候,该代理服务器就成为了我们的服务器,而代理服务器本身也成为了客户端去向我们真正请求的服务器发送请求,当代理服务器获得响应后再将响应返回给我们本地的客户端,这样就成功的实现了隐藏我们本地ip的功能。

  为什么要使用代理呢?一些网站在后端处理请求的时候会检测一段时间内同一个ip访问的次数,如果次数达到了一定的值,就会直接拒绝服务,也就是经常说的ip被封了。为了防止这种情况的发生,就需要强大的代理功能来隐藏我们的ip。在使用爬虫爬去数据的时候,如果我们能够不断的更换代理,就会让服务器迷失自己~

  常见的代理设置:使用网上的免费代理或者使用付费的代理服务。

  

Python爬虫学习二------爬虫基本原理

标签:服务器   cookie   mysq   解析   有用   使用   学习   通过   request   

原文地址:https://www.cnblogs.com/qianzhaorong/p/9185398.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!