Python WMI查询日期筛选器

Python WMI查询日期筛选器,python,windows,wmi,Python,Windows,Wmi,我试图从WMI Win32\u NTLogEvent类读取数据,但我只想读取TimeWrite在日期范围内的实例 我正在使用Python的WMI模块,该模块允许纯WMI查询(1)或参数化方法(2): c.query(“选择SourceName,来自Win32的消息\u NTLogEvent,其中EventType=1,Logfile=\“Application\”) c.Win32\u NTLogEvent(EventType=1,Logfile=“Application”) 问题是,我似乎无法

我试图从WMI Win32\u NTLogEvent类读取数据,但我只想读取TimeWrite在日期范围内的实例

我正在使用Python的WMI模块,该模块允许纯WMI查询(1)或参数化方法(2):

  • c.query(“选择SourceName,来自Win32的消息\u NTLogEvent,其中EventType=1,Logfile=\“Application\”)

  • c.Win32\u NTLogEvent(EventType=1,Logfile=“Application”)

  • 问题是,我似乎无法接受我的日期参数。我尝试了几种日期格式,包括相当模糊的格式,我唯一的成功是使用上面的第二种方法和=运算符,这并没有真正的帮助:

    c.Win32_NTLogEvent(EventType =1, Logfile = "Application", TimeWritten = "20110421013749.000000-000")
    
    我知道我可以在Python代码中过滤结果集,但我相当肯定这可以在查询中完成。我想我只是错过了一些东西。有人有什么建议吗


    谢谢。

    你的WQL句子错了

    替换此代码

    c.query("Select SourceName, Message from Win32_NTLogEvent where EventType =1, Logfile = \"Application\"")
    
    通过这个

    c.query("Select SourceName, Message from Win32_NTLogEvent where EventType =1 AND Logfile = \"Application\" AND TimeWritten<=\"20110421013749.000000-000\" ")
    

    c.query(“选择SourceName,Messagefrom Win32\u NTLogEvent,其中EventType=1,Logfile=\“Application\”和TimeWritten您可以显示用于按日期筛选的代码(WQL语句)吗?我进行了编辑以包含有效的查询。如果我尝试使用与原始WQL相同的方法,则会出现错误。