2011-11-28 43 views
0

我正在使用PYTHON發送帶附件的電子郵件。爲了附加文件,我必須將其與服務器的完整URL放在一起,但文件的名稱包含空洞URL。如何從URL中只提取文件名。如何更改附件名稱?

我得到這個URL文件: /var/www/RH/HV/FILE.doc

而且我想附件出現 FILE.DOC

這裏的一部分代碼,我認爲應該添加說明...

#adjunto 
    adjunto = MIMEBase('application', "octet-stream") 
    adjunto.set_payload(open(file, "rb").read()) 
    encode_base64(adjunto) 
    adjunto.add_header('Content-Disposition', 'attachment; filename= "%s"' % file) 
    msg.attach(adjunto) 

我希望有人可以幫忙! THKS !!!

+0

您使用的是哪個電子郵件庫?如果是sendmail,到目前爲止您嘗試了什麼? – Hossein

+0

我正在使用:SMTP,電子郵件和發送郵件.....我已經嘗試了os.path.basename(),但它停止附加文件....我會把該函數的代碼更多清除 – mauguerra

回答

2

使用os.path.basename():

import os.path 

p = '/var/www/RH/HV/FILE.doc' 
print os.path.basename(p) 

這是假設你與正常的文件路徑,而不是URL工作。但基於這個問題,它看起來像你沒有看URL。

+0

謝謝.... 我在錯誤的地方添加指令.....但它工作得很好 – mauguerra