2017-02-13 8 views
-1

こんにちは、私は "Windows Updateの履歴を表示するためのPythonスクリプト"を作ろうとしています。pywin32の新機能です。pywin32モジュールに関する多くの情報を見つけることができます。これのいくつかの情報や例は非常に高く評価されます。"Windows Updateの履歴を表示するためのPythonスクリプト"

+1

あなたは何を試しましたか、それについては何が問題になりましたか?また、質問を改善するためにhttp://stackoverflow.com/help/on-topicを参照してください –

+0

現在、私は例を探しています。私は同じことをしようとする人の情報を見つけることができた。 –

答えて

0

次のスクリプトは、(最初​​pip install -U pywinautoを実行する必要があります)は、Windows 10上で私のために働いている:

from __future__ import print_function 
from pywinauto import Application 

Application().start('control.exe') 
app = Application(backend='uia').connect(path='explorer.exe', title='Control Panel') 

app.window(title='Control Panel').ProgramsHyperlink.invoke() 
app.wait_cpu_usage_lower(threshold=0.5, timeout=30, usage_interval=1.0) 

app.window(title='Programs').child_window(title='View installed updates', control_type='Hyperlink').invoke() 
app.wait_cpu_usage_lower(threshold=0.5, timeout=30, usage_interval=1.0) 

list_box = app.InstalledUpdates.FolderViewListBox 

items = list_box.descendants(control_type='ListItem') 
all_updates = [item.window_text() for item in items] 
print('\nAll updates ({}):\n'.format(len(all_updates))) 
print(all_updates) 

windows_items = list_box.child_window(title_re='^Microsoft Windows.*', control_type='Group').descendants(control_type='ListItem') 
windows_updates = [item.window_text() for item in windows_items] 
print('\nWindows updates only ({}):\n'.format(len(windows_updates))) 
print(windows_updates) 

P.S. pyWin32だけを使ってこのようなスクリプトを書くことは不可能です。 pywinautoは、comtypesパッケージをMS UIオートメーションテクノロジの使用に依存して使用します(スクリプトにbackend='uia'として記載されています)。

P.P.S.ちょうど1時間でスクリプトを一から書きました(しかし、私はpywinautoのメンテナです:))。

関連する問題