作为自己的学习梳理,后期或许会讲一些案例什么的.
以前不喜欢写什么博客什么的,想的自己会的东西别人大概都是会的,反正这东西网上一搜一大堆!
现在想想,其实自己会些什么东西自己还是只有一些笼统的概念,会做什么的.都没有一个清晰的认识,所以今天就想着梳理一下自己到底会一些什么样的东西!
爬虫的基本原理
1什么是爬虫:
简单 一句话就是: (1)"请求" 网站,并且 (2) "提取数据"的 (3)"自动化"程序。
(1)请求: 简单的理解就是,你给你朋友打电话!或者你给你朋友发邮件!你朋友会接你的电话或者回复你的邮件。这就是请求网站所返回的数据。就是你首先要给指定的某个人拨号才能打通他电话的意思!所以我们请求网站是指特定的网站,
(2)提取数据: 你朋友接了电话之后,要聊天吧,这个聊天的内容就是数据,有些家长里短什么闲聊,也有有写比较重要的事情什么的,但是家长理短这些闲聊的东西,又不是我们想要的东西,所以一般都不会做记录,但是重要的信息,比如你想知道某某人的电话号码,或者位置什么的,你是不是要记录下来,方便你以后可以找得到,然后通过写在本子上,或者其它的记录方式,这样的过程就是提取数据的过程,
(3)自动化:就是你给你朋友打电话,是不是你只用拨打你朋友的电话,具体它是怎么接通的,这个东西,怎么找到你朋友的,这个问题就不用你操心了,对吧!!!所以,0基础的朋友们不要过于太深究这个问题!你只用知道电话可以实现这样的功能能就好了,你只需要做的事情就是记录你想要的东西!
可以理解成:我给朋友打个电话,问他别人的电话,用张纸写下来的过程!!
那么,python是怎么实现这样的过程呢,
官方和一些 第三方库提供一些这样的方法,也就是上面自动化的过程!现在我们不必要去了解这个东西,随着学习的积累自己就理解了!!!
这里我们用到的是 Python3,
常用的请求发送的方法有!
urllib库,和requests库(第一个是官方库,第二个是第三方库,后面会有介绍.我们先了解下有这个东西就好了.!
数据提取!
正则表达式(官方的re模块),BeautifulSoup(bs4),Xpath,
数据存储
MySQL,mongoDB,Redis
一些可视化的第三方库,pyqueyr,selenium
还有强大Scrapy爬虫框架
库的安装和数据库的安装我就不说了。这些东西既然你都看这篇文章了。你肯定是有一定了解的!
下一章我们会简单介绍,urllib的常用模块和request的常用模块,更新时间不定!不要喷我哦!!