美文网首页
「爬虫」01网络爬虫基础知识

「爬虫」01网络爬虫基础知识

作者: 林拂晓 | 来源:发表于2020-01-04 18:32 被阅读0次

1.网络爬虫:自动从互联网中定向(有目标、过滤无关信息)或不定向(随机)地采集信息的一种程序。常用的类型有:通用网络爬虫(不定向)、聚焦网络爬虫(定向设置过滤规则)。

2.网络爬虫的应用:①搜索引擎②采集金融数据③采集商品数据④自动过滤广告⑤采集竞争对手的客户数据⑥采集行业相关数据,进行数据分析......

3.网络爬虫的运行原理

(1)通用网络爬虫:

①获取初始URL;②爬取页面并获取新的URL;③将爬取的内容放到服务器中,将新URL放入URL队列;④读取新URL,重复②③④;⑤直到满足停止条件结束。

(2)聚焦网络爬虫:

①对抓取目标进行相应的定义或描述;②获取初始URL;③爬取页面并获得新的URL;④将爬取的内容放到服务器中,过滤无关链接后,将新URL放入URL队列中;⑤确定下一步抓取目标,重复①②③④⑤;⑥直到满足停止条件结束。

4.正则表达式

(1)原子:是正则表达式中最基本的组成单位,每个正则表达式中至少要包含一个原子。常见的原子类型有:

①普通字符

原子-普通字符

②非打印字符

原子-非打印字符

③通用字符

\w匹配任意字母、数字、下划线

【\W匹配除了字母、数字、下划线以外的任意其它字符】

\d 匹配任意十进制数

【\D匹配除了十进制数以外的任意其它字符】

\s 匹配空白字符

【\S匹配除了空白字符以外的任意其它字符】

原子-通用字符

④原子表

原子-原子表

【注】①[jsz]表示三个字母处于平等地位,能够匹配的前提是保证pyth和n中间存在且只能存在j、s、z中任意一个。

②[^j]     ^放在原子表中表示非,不是j的其它的原子。

(2)元字符

. 匹配任意字符

^ 匹配字符串开始的位置

$ 匹配字符串结束的位置

* 匹配重复0次、1次或者多次的位置

? 匹配重复0次或者1次的位置

+ 匹配重复1次或多次的位置

t{n} 原子t恰好出现了n次

t{n,} 原子t至少出现了n次

t{n,m} 原子t至少出现n次且至多出现m次(n<=t<=m)

t|s 模式选择符,t或者s

() 模式单元,用于提取某一内容

元字符

(3)模式修正符

I 忽略大小写

M 多行匹配

L 本地化识别匹配

U 根据unique字符解析字符

S 让.也能匹配换行符

模式修正符

(4)①贪婪模式:尽可能多的匹配。

②懒惰模式:尽可能少的匹配。

两种匹配模式

(5)正则表达式函数

①re.match()函数②re.search()函数

re.match()从头匹配;re.search()从左向右匹配 ,不在意字符串出现位置。

re.match()函数和re.search()函数的对比

③全局匹配函数re.compile(pat).findall(string)

全局匹配函数

④re.sub()函数

replace()函数和re.sub()函数的对比

(6)匹配.com、.cn

匹配.com或.cn

相关文章

网友评论

      本文标题:「爬虫」01网络爬虫基础知识

      本文链接:https://www.haomeiwen.com/subject/cwlfactx.html