python 3.4.2 使用urllib.request子產品擷取網頁内容,雖說知道要注意編解碼的問題,但有些細節還是不清楚,終于碰到了TypeError的錯誤:
TypeError:can't use a string pattern on a bytes-like object
知道是位元組和字元使用錯誤,但是問題在哪兒呢?隻好敲代碼問問了。
import urllib.request
url = 'http://www.baidu.com'
req = urllib.request.Request(url)
response = req.urlopen(req)
page = response.read()
the_page = page.decode("UTF-8")
b_page = the_page.encode("UTF-8")
page 的類型是: bytes
the_page 的類型是: string
b_page 的類型是: bytes
知道了這些細節,修改代碼bug就很簡單了。