Python 从PST-';读取电子邮件时,Pywin32例外;基础安全系统找不到您的数字标识名
我正试图确定这个问题是从哪里来的。绝大多数电子邮件都能够正确处理,不会出现任何错误。我到处寻找这个错误,我看到人们对outlook有问题,但不仅仅是从PST文件中提取Python 从PST-';读取电子邮件时,Pywin32例外;基础安全系统找不到您的数字标识名,python,html,outlook,pywin32,Python,Html,Outlook,Pywin32,我正试图确定这个问题是从哪里来的。绝大多数电子邮件都能够正确处理,不会出现任何错误。我到处寻找这个错误,我看到人们对outlook有问题,但不仅仅是从PST文件中提取 def enumerate_folders(FolderObj, mymode): for ChildFolder in FolderObj.Folders: enumerate_folders(ChildFolder, mymode) iterate_messages(FolderObj, m
def enumerate_folders(FolderObj, mymode):
for ChildFolder in FolderObj.Folders:
enumerate_folders(ChildFolder, mymode)
iterate_messages(FolderObj, mymode)
def iterate_messages(FolderObj, mymode):
global mycounter2
for item in FolderObj.Items:
try:
body_content = item.HTMLbody
writeToFile(body_content, mypath)
mycounter2 = mycounter2 + 1
except AttributeError:
pass
def writeToFile(messageHTML, path):
global mycounter2
filename = '\htmloutput' + str(mycounter2) + '.html'
file = open(path + filename, "x")
try:
file.write(messageHTML)
except UnicodeEncodeError:
altText = str(messageHTML.encode('ascii', 'ignore'))
file.write(altText)
#print("Hit unicode error, trying alternate format at output " + str(mycounter2))
outlook.AddStore(pst)
PSTFolderObj = find_pst_folder(outlook, pst)
try:
enumerate_folders(PSTFolderObj, whatmode)
except Exception as exc:
print(exc)
问题与用户Outlook加密证书有关,而与代码无关。这个问题源于一个用户最近更换了计算机,并且不再在计算机上拥有加密电子邮件的证书 当我在自己的Outlook中解包PST时,我发现了问题所在,并收到了与通过代码运行PST时完全相同的异常。这让我问他们是否能够在自己的Outlook实例中打开电子邮件,而他们却不能。然后他们解释说,他们最近换了电脑,电脑上不再有证书 一旦他们重新添加证书并再次导出PST,我们就能够通过应用程序成功地运行它