网站信息采集
优采云 发布时间: 2020-08-06 08:10网站信息采集
在编写采集器之前,您可能需要了解并采集网站信息
robots.txt机器人协议(也称为采集器协议,机器人协议等)的全名是“机器人排除协议”. 该网站使用漫游器协议告诉搜索引擎哪些网页可以被抓取,哪些网页不能被抓取. 普通网站将有此文件. 您可以大致了解该网站的局限性
以下是知乎的robots.txt,可以通过
# 禁止今日头条和悟空问答爬虫抓取知乎网站内容
User-agent: *
Request-rate: 1/2 # load 1 page per 2 seconds
Crawl-delay: 10
Disallow: /login
Disallow: /logout
Disallow: /resetpassword
Disallow: /terms
Disallow: /search
Disallow: /notifications
Disallow: /settings
Disallow: /inbox
Disallow: /admin_inbox
Disallow: /*?guide*
Disallow: /people/*
User-agent指示哪些用户代理受到限制,*表示所有爬网程序都受到限制,并且请求速率设置为每两秒访问一次页面,并且还设置了Crawl-delay,抓取延迟为10秒. 为了知道服务器没有过载,我们最好遵循它吗? ? ? ?稍后禁止访问路径
使用网站: 估计网站的大小
您要获取信息的网站中有90%已被百度或Google访问过. 使用此命令,您可以快速了解网站的大小,以便在设计采集器时选择正确的计划
确定网站使用的技术
安装内置模块
pip install builtwith
使用方法
import builtwith as bw
res = bw.parse("https://www.zhihu.com/")
print(res)
# {'javascript-frameworks': ['React', 'RequireJS']}
res = bw.parse("https://www.upc.edu.cn/")
print(res)
# {'font-scripts': ['Font Awesome'], 'javascript-frameworks': ['jQuery']}
res = bw.parse("http://example.webscraping.com")
print(res)
#{'web-servers': ['Nginx'], 'web-frameworks': ['Web2py', 'Twitter Bootstrap'], 'programming-languages': ['Python'], 'javascript-frameworks': ['jQuery', 'Modernizr', 'jQuery UI']}
您可以知道知乎使用了React框架,还可以知道网站是用什么语言开发的,服务器的类型等等.
个人爬虫体验采集地址