Python正则表达式匹配HTML页面编码

yipeiwu_com6年前Python基础

html页面一般都会指定一个编码,如何获取到是处理html页面的第一步,因为错误的编码必然带来后面处理的问题。这里我用python的正则表达式写了个:

import re

a = ["<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />",
   '<meta http-equiv=Content-Type content="text/html;charset=gb2312">',
   '<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">',
   '<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />',
   '<meta http-equiv="content-type" content="text/html; charset=utf-8" />',
   '<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />',
   '<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />'
   ]



b = "<meta[ ]+http-equiv=["']?content-type["']?[ ]+content=["']?text/html;[ ]*charset=([0-9-a-zA-Z]+)["']?"


B = re.compile(b, re.IGNORECASE)


for ax in a:
  r1 = B.search(ax)

  if r1:
    print r1.group()
    print r1.group(1), len(r1.group())
  else:
    print 'not match'

相关文章

python自动化测试之异常及日志操作实例分析

本文实例讲述了python自动化测试之异常及日志操作。分享给大家供大家参考,具体如下:   为了保持自动化测试用例的健壮性,异常的捕获及处理,日志的记录对掌握自动化测试执行情况尤为重要,...

python3 kmp 字符串匹配的方法

python3 kmp 字符串匹配的方法

先声明,本人菜鸟一个,写博客是为了记录学习的过程,以及自己的理解和心得,可能有的地方写的不好,希望大神指出。。。 抛出问题 给定一个文本串test_str(被匹配的字符串)和模式串pat...

python通过http下载文件的方法详解

1、通过requests.get方法 r = requests.get("http://200.20.3.20:8080/job/Compile/job/aaa/496/artifa...

Python实现决策树并且使用Graphviz可视化的例子

Python实现决策树并且使用Graphviz可视化的例子

一、什么是决策树(decision tree)——机器学习中的一个重要的分类算法 决策树是一个类似于数据流程图的树结构:其中,每个内部节点表示一个属性上的测试,每个分支代表一个属性输出,...

详解在Python和IPython中使用Docker

现在Docker是地球上最炙手可热的项目之一,就意味着人民实际上不仅仅是因为这个才喜欢它。 话虽如此,我非常喜欢使用容器,服务发现以及所有被创造出的新趣的点子和领域来切换工作作为范例。...