网页源码单行:
</title><link rel="shortcut icon" href="/_layouts/15/Canway.Portal.External.Web/images/favicon.png" type="image/vnd.microsoft.icon" id="favicon"><link rel="stylesheet" type="text/css" href="/_layouts/15/2052/styles/Themable/corev15.css?rev=OjbVZfNOSp9SHxHy9FUrXw%3D%3D"><link rel="shortcut icon" href="/gday!!!!!!!!!!!!!!!!!!!!!!/_layouts/15/Canway.Portal.External.Web/images/.png" type="image/vnd.microsoft.icon" id="favicon">
现在要实现正则表达式提取其中的三个链接
1:/_layouts/15/Canway.Portal.External.Web/images/favicon.png
2:/_layouts/15/2052/styles/Themable/corev15.css?rev=OjbVZfNOSp9SHxHy9FUrXw%3D%3D
3:/gday!!!!!!!!!!!!!!!!!!!!!!/_layouts/15/Canway.Portal.External.Web/images/.png
用python的re模块不能返回所有的结果,只会返回匹配到的最后一个,请问一下用什么方式可以?
您好,方法有很多,re模块和xpath等等一大把。当然您说re模块不行,我就用re模块举个栗子:
先定义您的网页源码:
接下来是定义re模块的抓取规则,这里可以用到compile贪婪匹配:
注意最后加上re.I,用于忽略大小写(当然这里不加也可以),接下来是读取抓取的数据:
定义一个空list:
然后通过for遍历读出来:
最后上图,证明我说的是真的:
