[英]Python win32com Outlook HTMLbody formatting directory incorrectly
我正在嘗試使用win32com在Outlook電子郵件的正文中將超鏈接發送到共享目錄。 我不確定運行程序使目錄顯示如下時,我的路徑發生了什么。
import win32com.client as win32
outlook = win32.Dispatch('outlook.application')
mail = outlook.CreateItem(0)
mail.To = 'EMAIL ADDRESSES'
mail.Subject = 'Subject'
mail.HTMLbody = ("Hello All -<br><br>"
"Please find the following files in the shared drive:<br>"
"<a href='\\servername1\apps\folder'>"
"\\servername1\apps\folder</a><br><br>"
"The file names are:<br>"
"FILENAMES")
mail.send
文件路徑在電子郵件中顯示為:\\ servername1pps \\ folder
我工作的家伙能夠回答這個問題。
import win32com.client as win32
outlook = win32.Dispatch('outlook.application')
mail = outlook.CreateItem(0)
mail.To = 'EMAIL ADDRESSES'
mail.Subject = 'Subject'
mail.HTMLbody = (r"""Hello All -<br><br>
Please find the following files in the shared drive:<br>
<a href='\\servername1\apps\folder'>
\\servername1\apps\folder</a><br><br>
The file names are:<br>
FILENAMES""")
mail.send
我們添加了“ r”,后跟三引號,它可以正常工作。
不確定r的含義,但是它起作用了。 也許有人可以向我解釋r。 可能是一個愚蠢的問題,但老實說我不知道。
要回答第二個問題, “ r在字符串前面意味着什么” ,它表示原始字符串。 要引用另一個stackoverflow頁面:
“ r表示該字符串將被視為原始字符串,這意味着所有轉義碼都將被忽略”
因此,例如,如果您有一個文件路徑,其中文件夾名稱在單詞之間有空格,則必須使用r前綴。 例如:r“ C:\\ Users \\ A010101 \\ Desktop \\\\ file.txt之間的空格”
請參閱有關r前綴的問題頁面: 在字符串文字前加“ r”是什么意思?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.