python

导航

怎么用python正则获取网页内容

来源 :中华考试网 2020-11-10

  相信很多小伙伴刚接触正则这个词语,脑海中一点概念也没有,其实从字面上我们稍微能够揣摩到一点,这需要去“接触”内容,由此,那就可以展开本章话题。

  先看一组后台收到的代码数据,要求正则获取网页内容:

  *以下为网页源代码,一个列表(12行),需要获取 ID后面的数字和中文内容,并保存到文本。

  1

  2

  3

  4

  5

  6

  7

  8

  9

  中文内容试听

  中文内容2试听

  中文内容3试听

  代码演示:

  1

  2

  3

  4

  5

  6

  7

  8

  9

  10

  11

  12

  13

  14

  15

  16

  17

  #!/usr/bin/env python

  #coding=utf-8

  import re

  string = '''

  中文内容试听

  中文内容2试听

  中文内容3试听

  '''

  match = re.findall("

  (.*?)\<",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次

  边界:

  $ : 以某某结尾

  ^ : 以某某开头

分享到

相关资讯