我需要單擊打開的 Outlook 電子郵件,即顯示“批準請求”的特定批準鏈接。
我正確打開了想要的電子郵件,但我無法單擊特定鏈接。這是代碼:
import win32com.client
outlook=win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
inbox=outlook.GetDefaultFolder(6)
messages = inbox.Items
messages.Sort("[ReceivedTime]", Descending=True)
for i in range(100):
message = messages.GetNext()
print("" message.Subject, str(message.ReceivedTime))
if message.Subject == "Mail to approve request":
message.Display(False)
else:
pass
uj5u.com熱心網友回復:
您將需要決議MailItem.HTMLBody屬性,提取相關鏈接,使用該鏈接啟動瀏覽器。
此外,永遠不要遍歷檔案夾中的所有專案,使用Items.Find/FindNext或Items.Restrict使用類似的查詢"[Subject]='Mail to approve request'"
uj5u.com熱心網友回復:
有幾種方法可以在 Python 中以編程方式打開超鏈接。該如何在Python中打開一個URL頁面說明可能出現的情況。例如:
import os
os.system("start \"\" https://example.com")
使用HTMLBody屬性,該屬性回傳表示指定項的 HTML 正文的字串。因此,您可以通過決議訊息正文以編程方式找到所需的 URL,并以編程方式執行它。
最后,要找到與您的條件相對應的專案,請使用該類的Find/FindNext或Restrict方法Items。在以下文章中閱讀有關它們的更多資訊:
- 如何:使用 Find 和 FindNext 方法從檔案夾中檢索 Outlook 郵件專案(C#、VB.NET)
- 如何:使用限制方法從檔案夾中檢索 Outlook 郵件專案
請參閱使用查詢關鍵字過濾專案以正確構建搜索條件字串。
此外,您可能會發現AdvancedSearchApplication 類的方法很有幫助。AdvancedSearch在 Outlook 中使用該方法的主要好處是:
- 搜索在另一個執行緒中執行。您不需要手動運行另一個執行緒,因為該
AdvancedSearch方法會在后臺自動運行它。 - 可以在任何位置(即超出某個檔案夾的范圍)搜索任何專案型別:郵件、約會、日歷、便箋等。的
Restrict和Find/FindNext方法可應用于特定的Items集合(見Items所述的屬性Folder類Outlook)中。 - 完全支持 DASL 查詢(自定義屬性也可用于搜索)。您可以在 MSDN中的過濾文章中閱讀有關此內容的更多資訊。為了提高搜索性能,如果為商店啟用了即時搜索,則可以使用即時搜索關鍵字(請參閱類的
IsInstantSearchEnabled屬性Store)。 - 您可以使用類的
Stop方法隨時停止搜索程序Search。
在 Outlook中的高級搜索中以編程方式閱讀有關此方法的更多資訊:C#、VB.NET文章。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/406605.html
標籤:
