1. 程式人生 > 其它 >python爬蟲錯誤之 “UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd3 in position 252”

python爬蟲錯誤之 “UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd3 in position 252”

今天是學習爬蟲第一天,俗話說萬事開頭難。剛寫的第一個程式就報錯了
原始碼如下:

import urllib.request

url = "https://fishc.com.cn/"
response = urllib.request.urlopen(url)
html = response.read().decode("utf-8")
print(html)

錯誤如下:
在這裡插入圖片描述

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd3 in position 252: invalid continuation byte

翻譯過來就是:
"utf-8”編解碼器無法解碼位置252中的位元組0xd3:無效的連續位元組

這個是解碼出現了問題
我們去要爬的網站看一下,看看他的編碼方式是什麼
輸入網站域名 --> 點選F12鍵
/img-blog.csdnimg.cn/20210509150034586.png)

我們可以看到是gbk編碼方式,至此問題原因就找到了
修改程式碼,成功解決耶耶耶!

import urllib.request

url = "https://fishc.com.cn/"
response = urllib.request.urlopen(url)
html = response.read().decode("gbk")
print
(html)