背景
使用工具 youtube-dl 時,剛設(shè)置完 "C:\Users\Administrator\AppData\Roaming\youtube-dl\config.txt", 就遇到了問題:
PS E:\video\Whats-new-in-Chrome> youtube-dl -U
Traceback (most recent call last):
File "main.py", line 19, in
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpksi3o1r1\build\youtube_dl_init_.py", line 474, in main
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpksi3o1r1\build\youtube_dl_init_.py", line 58, in _real_main
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpksi3o1r1\build\youtube_dl\options.py", line 904, in parseOpts
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpksi3o1r1\build\youtube_dl\options.py", line 78, in _readUserConf
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpksi3o1r1\build\youtube_dl\options.py", line 49, in _readOptions
UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 39: illegal multibyte sequence
研究
看樣子是編碼問題。
首先想到的是 txt 的文本編碼。創(chuàng)建 config.txt 時用的是 notepad++,默認(rèn) utf-8。
而 windows 的記事本(notepad)默認(rèn)是 ANSI。
youtube-dl 的設(shè)計者應(yīng)該也是默認(rèn)用戶使用 notepad 創(chuàng)建文本吧。
解決方案
于是,用記事本重新打開 config.txt ,另存為,選則編碼 ANSI,替換原文件。
再次執(zhí)行 youtube-dl -U 不再報錯了。
浙公網(wǎng)安備 33010602011771號