python正则表达式获取网页内容
怎么用python正则表达式获取网页内容? 相信很多小伙伴刚接触正则这个词语,脑海中一点概念也没有,其实从字面上我们稍微能够揣摩到一点,这需要去“接触”内容,由此,那就可以展开本章话题。 先看一组后台收到的代码数据,要求正则获取网页内容: *以下为网页源代码,一个列表(12行),需要获取 ID后面的数字和中文内容,并保存到文本。 <ul id="iyy_speak"> <li><a href="player.php?type=2&id=46819" target="_blank" >中文内容</a><span class="yy_man"><a href="player.php?type=2&id=46819" target="_blank">试听</a></span></li> <li><a href="player.php?type=2&id=46818" target="_blank" >中文内容2</a><span class="yy_man"><a href="player.php?type=2&id=46818" target="_blank">试听</a></span></li> <li><a href="player.php?type=2&id=45717" target="_blank" >中文内容3</a><span class="yy_man"><a href="player.php?type=2&id=45717" target="_blank">试听</a></span></li> </ul> 代码演示#!/usr/bin/env python #coding=utf-8 import re string = ''' <ul id="iyy_speak"> <li><a href="player.php?type=2&id=46819" target="_blank" >中文内容</a><span class="yy_man"><a href="player.php?type=2&id=46819" target="_blank">试听</a></span></li> <li><a href="player.php?type=2&id=46818" target="_blank" >中文内容2</a><span class="yy_man"><a href="player.php?type=2&id=46818" target="_blank">试听</a></span></li> <li><a href="player.php?type=2&id=45717" target="_blank" >中文内容3</a><span class="yy_man"><a href="player.php?type=2&id=45717" target="_blank">试听</a></span></li> </ul> ''' match = re.findall("<li><a href=\"player.php\?type=2\&id=(\d+)\".*?>(.*?)\<",string) for x,y in match: print x,y.decode('utf-8') 认识正则表达式正则表达式就是对字符串进行操作的逻辑公式,相当于‘过滤’这个字符串。一开始学习可能是懵懂的,小编就是这样,后来一直不停的复习,总算是学会了。 常用正则表达式单字符: . : 除换行以外所有字符 [] :[aoe] [a-w] 匹配集合中任意一个字符 \d :数字 [0-9] \D : 非数字 \w :数字、字母、下划线、中文 \W : 非\w \s :所有的空白字符包,括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]。 \S : 非空白 数量修饰: * : 任意多次 >=0 + : 至少1次 >=1 ? : 可有可无 0次或者1次 {m} :固定m次 hello{3,} {m,} :至少m次 {m,n} :m-n次 边界: $ : 以某某结尾 ^ : 以某某开头 QQ技术乐园提醒:部分教程和软件中可能含有投递者个人宣传广告/QQ/QQ群等联系方式,如涉及交易请谨慎对待! » 转载保留版权:QQ技术乐园 » python正则表达式获取网页内容 » 本文链接地址:https://www.qqjsly.cn/zxjc/69.html |