首页 > 代码库 > Python 出现 can't use a string pattern on a bytes-like object

Python 出现 can't use a string pattern on a bytes-like object

  1. # coding=utf-8
  2. import urllib.request
  3. import re
  4. url = ‘http://www.163.com‘
  5. file = ‘d:/test.html‘
  6. data = urllib.request.urlopen(url).read()
  7. r1 = re.compile(‘<.*?>‘)
  8. c_t = r1.findall(data)
  9. print(c_t)

发现读取下来后,运行到第9 行,出现:

can‘t use a string pattern on a bytes-like object

查找了一下,是说3.0现在的参数更改了,现在读取的是bytes-like的,但参数要求是chart-like的,找了一下,加了个编码:

data = http://www.mamicode.com/data.decode(‘utf-8‘)

 

在与正则使用前,就可以正常使用了..

Python 出现 can't use a string pattern on a bytes-like object