小编Ulr*_*ich的帖子

如何使用 Python 解析/读取 Outlook PST 文件?

在 Internet 上搜索使用 Python 访问 Outlook PST 文件的结果很少(而且大多数显示的内容都已过时)。有谁知道如何在有或没有图书馆的情况下阅读 PST?不幸的是,我的编程能力不够好,无法在没有库的帮助下构建 PST 阅读器。

我的目标是获取有关内容的以下信息:

  • 每个文件夹的项目数
  • 项目类型(邮件、会议、联系人...)
  • 物品尺寸
  • 附件包括尺寸
  • 也许还有其他元数据,如日期、收件人等(可选)

我已经尝试过以下操作:

  1. libpff / pypff:崩溃并且似乎在执行某些操作之前读取内存中的整个文件(没有好的解决方案,因为 PST 文件保存在缓慢的网络存储上)。

  2. Libratom:与基于 libpff 的问题相同。

  3. Libpst:不清楚如何使用它/作为二进制文件提供(没有解释如何安装)/参见这篇文章的答案/似乎没有维护或更新。

  4. win32(在 Outlook 中安装 PST):一个教程展示了如何将 PST 安装到本地安装的 Outlook 中并通过 MAPI 访问获取内容,但这也非常非常慢,而且不是一个好的解决方案,因为需要 Outlook。

  5. Asponse Email Python:虽然文档不是很好,但一开始就有希望(没有 Python 示例/不同的命名,例如 PersonalStorage 对象和许多其他对象/每个文件夹 50 个项目后停止(可能是非免费版本的限制,但不清楚,因为出版商网站上缺乏解释)。

这是来自Asponse-website的示例:

personalStorage = PersonalStorage.from_file(dataDir + "Outlook.pst")

folderInfoCollection = personalStorage.root_folder.get_sub_folders()

for folderInfo in folderInfoCollection:

    print("Folder: " + folderInfo.display_name)
    print("Total Items: " + str(folderInfo.content_count))
    print("Total Unread Items: …
Run Code Online (Sandbox Code Playgroud)

python outlook pst

6
推荐指数
1
解决办法
6149
查看次数

PySimpleGUI:设置和获取多行小部件中的光标位置?

有没有办法在 PySimpleGUI 的多行小部件中获取光标的位置,存储它并将光标再次放回该小部件文本中的定义位置?

下面你可以看到我到目前为止编写的代码。我的目标是,当在上部窗口中键入“jk”时,光标会向下移动到输入行(有效)。用户可以在那里编写命令并完成输入(我还没有完成)。

现在的问题是如何让上方窗口中的光标跳回原来的位置?!

import PySimpleGUI as sg

layout = [  [sg.Multiline(key = 'editor',
                          size = (50, 10), 
                          focus = True, 
                          enable_events = True)],
            [sg.InputText(key ='command', size = (45, 1), ),], ]

window = sg.Window('editor', layout)

while True:
    event, values = window.read()

    if 'jk' in values['editor']:
        # delete jk and jump down in the command line #
        window['editor'].update(values['editor'].replace('jk', ''))
        window.Element('command').SetFocus(force = True)
        
    if event in ('Close Window', None): 
        break
    
window.close()
Run Code Online (Sandbox Code Playgroud)

任何帮助都是值得赞赏的,因为没有关于在 PySimpleGui 中设置或获取光标位置的文档。提前致谢!

python position cursor textfield pysimplegui

0
推荐指数
1
解决办法
4017
查看次数

标签 统计

python ×2

cursor ×1

outlook ×1

position ×1

pst ×1

pysimplegui ×1

textfield ×1