利用python正则表达式抓取网页中的图片到本地

本文介绍了Python正则表达式的使用,包括基本语法、边界匹配和分组匹配,并列举了re模块的常用方法如search、findall、sub和split。此外,还提供了一个实践案例,演示如何利用正则表达式抓取网页中的图片链接,并下载保存到本地。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

正则表达式语法:
* 匹配前一个字符0次或无限次
+ 匹配前一个字符1次或无限次
? 匹配前一个字符0次或1次
{m}/{m,n}匹配前一个字符m次或m到n次
*? / +? / ?? 匹配模式为非贪婪模式

import re
ma=re.match(r’[\w]*?’,’I am a boy’)

边界匹配:

^ 匹配字符串开头
$ 匹配字符串结尾
\A/\Z 指定的字符串必须出现在开头/结尾

分组匹配:

| 匹配左右任意一个表达式
(ab) 括号中表达式作为一个分组
\ 引用编号为num的分组匹配到的字符串
(?P) 分组起一个别名
(?p=name) 引用别名为name的分组匹配字符串

python正则表达式的re模块其他方法:
1.search(pattern,string,flags=0)
在一个字符串中查找匹配

2.findall(pattern,string,flags=0)
找到匹配,返回所有匹配部分的列表

3.sub(pattern,repl,string,count=0,flags=0)
将字符串中匹配正则表达式的部分替换为其他值

4.split(pattern,string,maxsplit=0,flags=0)
根据匹配分割字符串,返回分割字符串组成的列表

python正则表达式练习:
抓取网页中的图片到本地:
1.抓取网页,
2.获取图片地址
3.抓取图片内容并保存到本地

import urllib2
req = urllib2.urlopen('http://www.imooc.com/course/list')
buf = req.read()
print buf

import re
listurl =re.findall(r'http:.+\.jpg',buf)
print listurl

i=0
for url in listurl:
    f = open(str(i)+'.jpg','w')
    req = urllib2.urlopen(url)
    buf = req.read()
    f.write(buf)
    i+=1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值