Python 将.split()函数与urllib.request一起使用时出错

Python 将.split()函数与urllib.request一起使用时出错,python,python-3.x,typeerror,urllib,python-3.6,Python,Python 3.x,Typeerror,Urllib,Python 3.6,我试图将bbc的消息来源分成两部分,以获得头条新闻: import urllib.request url = 'http://www.bbc.com/' page = urllib.request.urlopen(url) contents = page.read() page.close() split1 = '<a class="media__link" href="/news/world-us-canada-39965107" rev="hero1|headline">\n

我试图将bbc的消息来源分成两部分,以获得头条新闻:

import urllib.request

url = 'http://www.bbc.com/'
page = urllib.request.urlopen(url)
contents = page.read()
page.close()

split1 = '<a class="media__link" href="/news/world-us-canada-39965107" rev="hero1|headline">\n'
split2 = '\n</a>'

title = contents.split(split1)[1].split(split2)[1]

print(title)
HTTPResponse.read([amt])

读取并返回响应正文,或最多返回下一个amt字节

返回一个bytes对象,而不是str。因此拆分分隔符也需要是bytes对象。只需在字符串前面添加一个
b

split1 = b'<a class="media__link" href="/news/world-us-canada-39965107" rev="hero1|headline">\n'
split2 = b'\n</a>'
split1=b''

内容
的类型为
字节
,因此只能通过该类型的分隔符对其进行拆分。您需要在Python3中传递一个
字节
类型对象。看起来您正试图拆分URL引用(href),那么为什么不看看呢?
contents = page.read()
split1 = b'<a class="media__link" href="/news/world-us-canada-39965107" rev="hero1|headline">\n'
split2 = b'\n</a>'