1.爬虫有什么作用?
鞋店老板需要了解竞争对手的价格,可以通过爬虫每天访问他们价格,也自己店商品进行比较
2.爬虫是否合法?
当抓取的数据是现实生活中的真实数据(比如,营业地址、电话清单),是允许转载的,但是,如果是原创数据
(比如,意见和评论),通常会受到限制,而不能转载。
3.robots.txt文件
多数网页都会定义 robots.txt文件,检查robots.txt文件可以最小化爬虫被封禁的可能性,还能发现和网站结构相关的线索
4.sitemap文件(即网站地图)可以帮助爬虫定位网站最新的内容,而无需爬去每一个网页
5.估算网站大小
估算方法:检查Google爬虫的结果,因为Google很可能已经爬取过我们感兴趣的网站
我们通过Google搜索关键词site关键词过滤
6.识别网站所用技术
builtwith模块, 安装 pip install builtwith
7.寻找网站的所有者
用pip install python-whois
可以看出该域名归属者是谁
如何安全的下载网页,然后介绍3种爬去网站的常见方法:
爬取网站地图
遍历每个网页的数据库 ID
跟踪网页链接
从HTTP错误列表中可了解:
4xx错误发生在请求存在问题,5xx错误发生在服务端存在问题
8.为了下载更可靠,我们需要控制用户代理的设定;
9.为了解析网站地图 我们使用正则
10.链接爬虫
11.下载限速
如果我们爬取往网站的速度过快,就会面临被封禁或者造成服务器过载的风险,为了避免,我们可以在两次下载之间添加延时,从而对
爬虫限速;
12.避免爬虫陷阱
我们爬虫会跟踪所有之前链接,一些网站会动态生成页面内容,会出现无限多个网页;
第二章
1.三种网页的抓取方法
1.正则
2.BeautifulSoup模块
3.lxml
2.为链接爬虫添加抓取回调
3.为链接爬虫添加缓存支持