首页 > 解决方案 > 在python的目标文件夹中保存名称包含/的文件

问题描述

我正在将 Outlook 中的电子邮件保存到本地文件夹。文件夹路径如下。

folder_path=r"C:\Documents\emails

文件名是电子邮件的主题,如下所示

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”)

我怎样才能解决这个问题?

标签: pythonexchangelib

解决方案


这取决于您希望如何处理/主题行中的 。相应地使用该.replace()主题的功能。

忽视/

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

那么目录将是:'C:\Documents\emails\test1email_123'

视为/目录结构

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

那么目录将是:'C:\Documents\emails\test1\email_123'

视为/特殊字符

如果 a/表示您组织中的其他内容,例如连字符或下划线,请使用它。

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

那么目录将是:'C:\Documents\emails\test1-email_123'


推荐阅读