簡體   English   中英

在 python 的目標文件夾中保存名稱包含 / 的文件

[英]Saving file with a name containing / at the destination folder in python

我正在將來自 outlook 的電子郵件保存到本地文件夾。文件夾路徑如下。

folder_path=r"C:\Documents\emails

文件名是 email 消息的主題,如下所示

subject=email_message.subject

所以 final_path 將是

final_path=os.path.join(folder_path,subject+".eml")

有時主題包含“/”然后它給出以下錯誤

[Error2] No such file or directory: 'C:\\Documents\\emails\\test1/email_123'

我認為這是因為主題行中的額外“/”(主題是“test1/email_123”)

我怎樣才能解決這個問題?

這取決於您希望如何處理主題行中的/ 相應地在主題上使用.replace() function。

忽略/

subject=email_message.subject.replace("/", "")

那么目錄將是:'C:\Documents\emails\test1email_123'

/視為目錄結構

subject=email_message.subject.replace("/", "\")

那么目錄將是:'C:\Documents\emails\test1\email_123'

/視為特殊字符

如果/表示您組織中的其他內容,例如連字符或下划線,請使用它。

subject=email_message.subject.replace("/", "-")

那么目錄將是:'C:\Documents\emails\test1-email_123'

你應該用別的東西代替這封信。

像 'C:\Documents\emails\test1/email_123' 應該轉換成 'C:\Documents\emails\test1_email_123'

這可以通過在final_path=os.path.join(folder_path,subject+".eml")之前放置一行來完成

subject.replace('/','_');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM