※ 引述《laiDark (C)》之銘言:
: 錯誤訊息截圖:https://imgur.com/Zw5wXnn
你的錯誤訊息告訴你,這個錯誤發生於 client.py 的 1117 行︰
self._output(request.encode('ascii'))
當 request 以 ascii encode 時發生錯誤,因為它包含非 ascii 的字元。
這個錯誤和你用哪家 cmd、哪個作業系統沒有關係,單純是因為你在 URL 裡
加入了非 ascii 的字元造成的。
你貼的 stackoverflow 問題也和這無關(該問題本身也有些意義不明),
並且該問題內使用的 Python 版本還是 2.x,跟你的狀況不同。
由於你沒有貼 quote 相關的程式碼,只能從你 quote 的結果來猜測問題在哪。
quote 輸出為︰
"%C2%83L%C2%83%C2%93%C2%83A%C2%83C1"
先 unquote︰
"\x83L\x83\x93\x83A\x83C1"
這裡就能很明顯看出來你把一串 binary 資料丟給 quote 了。
轉成 bytes 並以 shift-jis 進行 decode︰
"\x83L\x83\x93\x83A\x83C1".encode("latin-1").decode("shift-jis")
得到的結果就是︰
'キンアイ1'
結論大概就是,你在一開始拿到的內容就錯了,而且內容是以 latin-1 編碼。
這也符合你貼出來的錯誤︰
'ascii' codec can't encode character '\x83'