大多数网站都会定义一robots.txt文件,这样能够了解爬取该网站时存在哪些限制,在爬取以前检查robots.txt文件这一宝贵资源能够最小化爬虫被封禁的可能,并且还能发现和网站结构相关的线索。html
输入http://example.webscraping.com/robots.txt 咱们会看到如下内容:python
section1:禁止用户代理为BadCrawler的爬虫爬取网站web
section2:规定不管使用任何的代理,都应该在两次下载请求之间给出5秒的抓取延时,咱们应该听从该建议避免服务器过载,Disllow:/trap表示禁止爬取/trap连接,若是访问的画,服务器将会封你的ipapi
section3: 告诉了咱们一个网址,该网址内容能够帮助咱们定位网站的最新内容服务器
从robots.txt内容能够看到,网站为咱们提供了Sitemap网址,该网址能够帮助咱们定位网站最新的内容,而无须爬取每个网页,关于网站地图标准协议能够查看https://www.sitemaps.org/protocol.html,打开sitemap看看分布式
发现该网站地图提供了全部网页连接,虽然网站地图文件提供了一种爬取网站的有效方式,可是咱们仍需对其谨慎处理,由于该文件常常存在缺失、过时或不完整的问题网站
目标网站的大小会影响咱们如何进行爬取,若是网页的数量级特别大,使用串行下载可能须要持续数月才能完成,这时就须要使用分布式下载解决了ui
import builtwith print(builtwith.parse("http://example.webscraping.com"))
pip install python-whoisspa
以博客园为例:代理
import whois print (whois.whois("https://i.cnblogs.com"))