我怎样才能让 Pywinauto type_keys() 使用命名键,例如 {VK_TAB}

How can I get Pywinauto type_keys() to work with named keys, eg {VK_TAB}

我正在使用 pbixrefresher 自动刷新 PBI 报告,效果很好,但是我还需要将数据 table 保存为 csv 文件,方法是将 table 复制到 excel 然后保存为 csv,因为 table 太大而无法在 PBI 中导出为 csv(大约 60k 行)。我可以让 pywinauto 转到 PBI 中的数据视图,但我需要使用 Shift+TAB 突出显示 table 并调出 Copy Table 选项。 通过查看 pywinauto 上可用的信息,我相信 type_keys("+{VK_TAB}",win) 是我需要用来执行此操作的内容,但是我收到以下错误消息: pywinauto.keyboard.KeySequenceError: 未找到“}”

我已经尝试了 {TAB},以及不同的括号类型和没有括号但是 none 这些工作(使用没有括号没有错误但没有任何反应)。

我在尝试使用 ctrl(^)、shift(+) 和 alt(%) 的符号版本时发现了一些不一致之处。在 documentation 中,它声明使用向下和向上,附加到输入,因为这将按住 shift 键,同时按下中间的任何内容。我不得不在几个地方使用 ctrl 键执行此操作。这是这样做的:

type_keys("{VK_SHIFT down}{VK_TAB}{VK_SHIFT up}")

这将在按下 Tab 键的同时按住 Shift 键。