在讀取文件時候比如讀取 xxx.csv 時候 可能報編碼錯誤
類似於
'xxx' codec can't decode byte 0xac in position 211: illegal multibyte sequen
id_list = []
with open('E:/work_spider/xxx/xx.csv', "r", encoding="utf-8") as csvfile:
csvReader = csv.reader(csvfile)
for content in csvReader:
content = str(content)
if 'l.' in content:
continue
id_list.append(content.split('\\')[0].replace("['", ""))
可以在讀取時候嘗試制定編碼方式。
保存圖片或者視頻文件的時候或許也會報錯 Unicode decode error xxxxxxxxxxx
VideoHtmlContent = requests.get(url = VideoUrl,headers=headers).content
with open('bobovideo.mp4','wb',) as f:
f.write(VideoHtmlContent)
不要忘記 它的文件打開方式 圖片可視頻都是以bytes類型二進制方式請求和寫入 我們使用‘wb',以二進制寫模式打開
open有很多打開模式 以下僅供參考和查閱:
a表示append,r表示read,w表示write,+表示讀寫模式。,b表示二進制,t表示文本模式,t是默認的模式。
w 以寫方式打開,
a 以追加模式打開 (從 EOF 開始, 必要時創建新文件)
r+ 以讀寫模式打開
w+ 以讀寫模式打開
a+ 以讀寫模式打開
rb 以二進制讀模式打開
wb 以二進制寫模式打開
ab 以二進制追加模式打開
rb+ 以二進制讀寫模式打開
wb+ 以二進制讀寫模式打開
ab+ 以二進制讀寫模式打開
問題擴展:
python文件讀取:遇見的錯誤及解決辦法
TypeError: 'str' object is not callable
產生原因:
該錯誤TypeError: 'str' object is not callable字面上意思:就是str不可以被系統調用,
其實原因就是:你正在調用一個不能被調用的變量或對象,具體表現就是你調用函數、變量的方式錯誤.
例子:
filePath=kwargs['path']
filePathStr=str(filePath)
也就是自己在用的是關鍵字參數傳參,傳過來的時候是什么類型,傳過來就是什么類型,也就是filePath本來就是字符串類型,但是我又用了str()函數去作用於他,這就是問題所在,函數調用錯誤!
到此這篇關於python文件讀取失敗怎么處理的文章就介紹到這了,更多相關python文件讀取失敗怎么辦內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!