1.爬虫是什么
首先应该弄明白一件事,就是什么是爬虫,为什么要爬虫,百度了一下,是这样解释的:网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。其实,说白了就是爬虫可以模拟浏览器的行为做你想做的事,订制化自己搜索和下载的内容,并实现自动化的操作。比如浏览器可以下载小说,但是有时候并不能批量下载,那么爬虫的功能就有用武之地了。实现爬虫技术的编程环境有很多种,Java,Python,C++等都可以用来爬虫。相信很多人选择Python,因为Python确实很适合做爬虫,丰富的第三方库十分强大,简单几行代码便可实现你想要的功能,更重要的,Python也是数据挖掘和分析的好能手。电商API数据接口,爬取数据和分析数据一条龙的服务都用Python真的感觉很棒啊!
2.学习Python爬虫的大致步骤如下:
-
首先学会基本的Python语法知识
-
学习Python爬虫常用到的几个重要内置库urllib, http等,用于下载网页
-
学习正则表达式re、BeautifulSoup(bs4)、Xpath(lxml)等网页解析工具
-
开始一些简单的网站爬取(博主从百度开始的,哈哈),了解爬取数据过程
-
了解爬虫的一些反爬机制,header,robot,时间间隔,代理ip,隐含字段等
-
学习一些特殊网站的爬取,解决登录、Cookie、动态网页等问题
-
了解爬虫与数据库的结合,如何将爬取数据进行储存
-
学习应用Python的多线程、多进程进行爬取,提高爬虫效率
-
学习爬虫的框架,Scrapy、PySpider等
-
学习分布式爬虫(数据量庞大的需求)
3. 从第一个爬虫开始
首先,在爬虫中最常见的代码便是:
import requests
即引入requests库,是一切爬虫程序的基础。在Python中,有许多库可以供我们使用。这也是Python相对于其它编程语言的一大优势。
这里要注意,如果之前没有在电脑上安装过requests库,需要先进行安装。打开命令行终端,输入 pip install requests。
在引入requests数据库后,就可以使用其中的requests.get()方法了。其具体的用法为:
有一点需要注意的事,不是所有服务器都会欢迎爬虫程序。建议大家在运行爬虫程序前先去查一下相应网站的Robots协议,了解一下哪些页面是可以抓取的。而查看Robots协议的方式也很简单,只需在网站域名后加上/robots.txt就可以了。网址前如有显示‘Allow’即为允许爬取,而带有‘Disallow’后的网址就不建议大家去抓取了。