在我的爬虫一篇中,咱了解到了大概的爬虫思路,那么咱带着思路进一步研究爬虫技术
今天我们要用到re这个模块,对爬取到的内容进行清洗,拿到具体想要的内容
首先我们要了解re这个模块的功能,主要就是利用正则表达式,来提取内容
正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。
Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。
re 模块使 Python 语言拥有全部的正则表达式功能。
compile 函数根据一个模式字符串和可选的标志参数生成一个正则表达式对象。该对象拥有一系列方法用于正则表达式匹配和替换。
re 模块也提供了与这些方法功能完全一致的函数,这些函数使用一个模式字符串做为它们的第一个参数。
这次主要简单介绍一下常用的正则表达式处理函数
正则表达式量词
* 重复0次或多次
+ 重复1次或多次
? 重复0次或1次
{
n} 重复n次
{
n,3 重复n次或多次
{
n,m}重复n到m次
.*贪婪匹配
.*?惰性匹配
re.findall:在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的,则返回空列表
练习案例
lis =re.findall('\d+','你试试啊100428,你的1093989')
print(lis)
re.finditer:和 findall 类似,在字符串中找到正则表达式所匹配的所有子串,并把它们作为一个迭代器返回,这个功能我们用的比较多
练习案例
it = re.finditer(r"\d+","我的电话号是10086,我女朋友的电话是:10010")
for i in it:
prin