亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

關閉使用請求發送到 url 的文件 - Python

關閉使用請求發送到 url 的文件 - Python

ibeautiful 2023-05-16 16:46:15
在我的項目中,我必須將一些文本作為文件上傳到燒瓶服務器。我嘗試了以下方法,但遇到了一些問題:with open(os.path.join(os.getcwd(), "testfile.txt"), 'w+') as myFile:    myFile.write(content)    myFile.close()file = {'file': open(os.path.join(os.getcwd() , 'testfile.txt'), 'rb')}data = {'data': somedata}headers = {'Accept-Encoding': 'identity'}with requests.post(upload_url, files=file, data=data, headers=headers) as resp:    html = resp.content  os.remove(os.path.join(os.getcwd(), 'testfile.txt'))因為我必須只上傳文本作為文件所以我創建了一個臨時文件,寫了內容,然后刪除了它,但是這段代碼給了我以下錯誤回溯(最近調用最后):文件“D:\PythonTest\test.py”,第 121 行,上傳os.remove(os.path.join(os.getcwd(), 'testfile.txt'))PermissionError: [WinError 32] 進程無法訪問該文件,因為它正被另一個進程使用:'D:\PythonTest\testfile.txt'據我從“錯誤報告”中了解到的,這是因為文件在我發出的發布請求中打開。但我已將發布請求包含在“with”塊中,因此它應該會自動關閉它。我究竟做錯了什么?任何幫助和建議將不勝感激。
查看完整描述

1 回答

?
qq_遁去的一_1

TA貢獻1725條經驗 獲得超8個贊

此錯誤是由于您在此行再次打開文件并且從未關閉而引起的

file = {'file': open(os.path.join(os.getcwd() , 'testfile.txt'), 'rb')}

你也應該在這里使用with open


查看完整回答
反對 回復 2023-05-16
  • 1 回答
  • 0 關注
  • 151 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號