html頁面一般都會指定一個編碼,如何擷取到是處理html頁面的第一步,因為錯誤的編碼必然帶來後面處理的問題。這裡我用python的Regex寫了個:
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'