python爬虫学习笔记1

认识爬虫

爬虫的概念:又称网页蜘蛛、网络机器人,是一种按照一定规则、自动请求万维网网站并提取网络数据的程序或脚本。(数据是指网络上公开的可以访问到的网页信息)

爬虫的分类

按使用场景:通用爬虫、聚焦爬虫
按爬去形势:累积式爬虫、增量式爬虫
按爬取数据的存在方式:表层爬虫、深层爬虫

镜像备份是什么?
镜像备份是独立文件(数据文件、归档日志、控制文件)的备份。类似操作系统级的文件备份。
URL是什么?
统一资源定位系统,是因特网、万维网服务程序上用于指定信息位置的表示方法。
种子URL理解:就是从哪一个网址开始搜索。

通用爬虫

又称全网爬虫,它将爬取对象从一些种子URL扩充到整个网络,主要用途是为门户站点搜索引擎和大型web服务提供商采集数据。

聚焦爬虫

又称主题网络爬虫,选择性的爬取那些预先定义好的主题相关的页面的网络爬虫。

累积式爬虫

从某一个时间点开始,通过遍历的方式爬取系统所允许存储和处理的所有网页。

增量式爬虫

具有一定规模的网络页面集合的基础上,采用更新数据的方式选取已有集合中的过时网页进行爬取。

表层爬虫

爬取表层网页,表层网页是传统搜索引擎可以索引的页面,以超链接可以到达的静态网页为主构成的web页面。

深层爬虫

爬取深层网页,深层网页是那些大部分内容不能通过静态链接获取的、隐藏在搜索表单后的,只有用户提供一些关键词才能获得的web页面。

爬虫的实现原理和技术

爬虫是一个自动提取网页的程序
nofollow:是html页面中a标签的属性值,告诉搜索引擎不要追踪此网页的链接或不要追踪此特定链接。
DNS:是互联网的一项服务,它作为将域名或IP地址相互映射的一个分布式数据库,能方便访问互联网。(域名系统)

搜索引擎的工作流程

爬取网页、数据储存、预处理、提供检索服务,网站排名。
pagepank:链接的访问量排名

通用爬虫相关网站

robots.txt文件:robots协议(又称爬虫协议、机器人协议)全称是“网络爬虫排除标准”,是互联网界通行的道德规范。它使用#作为注释,一般情况下,该文件以一行或多行User-agent记录开始。
记录的详细介绍:
User-agent:描述搜索引擎robot的名字,在robots.txt文件中,至少有一条User-agent记录。
Disallow:用于描述不希望被访问的一个URL,这个URL可以是完整的路径也可以是部分路径。在robots.txt文件中,至少有一条Disallow记录。
Allow:描述希望被访问的一组URL,一个网站的所有URL默认都是Allow的,所以Allow通常都是和Disallow搭配使用的,实现允许访问一部分网页的同时禁止访问其他所有URL的功能。

注意

  1. robots.txt文件必须放置在一个站点的根目录下,而且文件名必须全部小写。
  2. Robots协议只是一种建议,他没有实际的约束力,网络爬虫可以选择不遵守这个协议,但可能会存在一些法律风险。

Sitemap.xml文件

为方便管理员通知爬虫遍历和更新网站的内容,而无需爬取每个网页,网站提供了Sitemap.sml文件(网站地图)

防止爬虫应对策略

  1. 设置User-Agent:它表示用户代理,是http协议的一个字段,作用是描述发出的http请求的终端信息,如操作系统及版本、浏览器及版本服务器通过这个字段可以知道访问网站的用户。正规的爬虫都有固定的User-Agent。
  2. 使用代理IP:用户先将请求发给代理IP,代理IP再发送给服务器,服务器会将代理IP视为爬虫的IP,同时用多个代理IP,可以降低单个IP地址的访问量。
  3. 降低访问频率
  4. 验证码限制

使用python做爬虫的原因

  1. 爬取网页本身的接口:相比其他动态脚本语言,python提供了较为完整的访问网页文档的API,相比其他静态编程语言,爬取网页的接口更加简洁。
  2. 网页爬取后的处理
  3. 开发效率高
  4. 上手快

八抓鱼工具的优点

功能强大、操作简单、流程可视化

你可能感兴趣的:(笔记,python,爬虫)