在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Python/ 'utf-8'報錯的問題 不知道錯在哪

'utf-8'報錯的問題 不知道錯在哪

產(chǎn)生這樣的報錯'utf-8' codec can't decode byte 0x8b in position 1: invalid start byte
我代碼:
from urllib import request
url = "http://odds.500.com/fenxi/yazhi-749525.shtml"
headers = {

"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"
}

req = request.Request(url)
resp = request.urlopen(req)
a = resp.read()
print(a.decode('utf-8'))### 問題描述

問題出現(xiàn)的環(huán)境背景及自己嘗試過哪些方法

相關(guān)代碼

// 請把代碼文本粘貼到下方(請勿用圖片代替代碼)

你期待的結(jié)果是什么?實際看到的錯誤信息又是什么?

回答
編輯回答
陌離殤

網(wǎng)頁經(jīng)過了gzip壓縮,需要解壓:

from urllib import request
import gzip

url = "http://odds.500.com/fenxi/yazhi-749525.shtml"
headers = {

"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"
}
req = request.Request(url)
resp = request.urlopen(req)
f = gzip.decompress(resp.read())
print(f.decode('gbk'))

更推薦直接使用requests庫:

import requests
url = "http://odds.500.com/fenxi/yazhi-749525.shtml"
content = requests.get(url).content

print(content.decode('gbk'))
2017年8月25日 05:17