python2.7的爬虫个人认为比较经典在此我将会用书中的网站http://example.webscraping.com作为案例
爬虫第一步:进行背景调研
了解网站的结构资源在网站的robots.txt和Sitemap文件上,下面了解一下robot.txt文件:
robots.txt是一个纯文本文件,在这个文件中网站管理者可以声明该网站中不想被搜索引擎访问的部分,或者指定搜索引擎只收录指定的内容
当一个搜索引擎(又称搜索机器人或蜘蛛程序)访问一个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果存在,搜索机器人就会按照该文件中的内容来确定访问的范围;如果该文件不存在,那么搜索机器人就沿着链接抓取
robots.txt的作用:
1、引导搜索引擎蜘蛛抓取指定栏目或内容;
2、网站改版或者URL重写优化时候屏蔽对搜索引擎不友好的链接;
3、屏蔽死链接、404错误页面;
4、屏蔽无内容、无价值页面;
5、屏蔽重复页面,如评论页、搜索结果页;
6、屏蔽任何不想被收录的页面;
7、引导蜘蛛抓取网站地图;
举个例子:
我访问了百度的robots文件
User-agent:表示针对的搜索引擎
Disallow:用来定义禁止蜘蛛爬取的页面或目录
Allow:用来定义允许蜘蛛爬取的页面或子目录
一般还会有网站的robots.txt给出Crawl-delay:5,意味着5秒内连续抓取就会禁止抓取一定时间
sitemap文件经常缺失所以在此处就不细讲
估算网站的大小
识别网站技术:
用builtwith模块
识别网站所有者,根据网站所有者的类型来设置爬虫速度
用whois模块
以上就是普通的准备工作