python win32 api文档.getElementByIdE

2024-09-29 19:29:32 发布

您现在位置:Python中文网/ 问答频道 /正文

import win32com
import win32com.client
import win32gui
import win32con
import pythoncom

def getIEServer(hwnd, ieServer):
    if win32gui.GetClassName(hwnd) == 'Internet Explorer_Server':
        ieServer.append(hwnd)

if __name__ == '__main__':
    #pythoncom.CoInitializeEx(0) # not use this for multithreading
    mainHwnd = win32gui.FindWindow('windowclass', 'windowtitle')
    if mainHwnd:
        ieServers = []
        win32gui.EnumChildWindows(mainHwnd, getIEServer, ieServers)
        if len(ieServers) > 0:
            ieServer = ieServers[0]
            msg = win32gui.RegisterWindowMessage('WM_HTML_GETOBJECT')
            ret, result = win32gui.SendMessageTimeout(ieServer, msg, 0, 0,     win32con.SMTO_ABORTIFHUNG, 1000)
            ob = pythoncom.ObjectFromLresult(result, pythoncom.IID_IDispatch, 0)
            doc = win32com.client.dynamic.Dispatch(ob)
            print doc.url
    #        doc.all['id'].click()

您可以使用上面的代码获得doc(document对象) 如果您尝试doc.getElementById ("some-id") 我得到了一个像下面这样的错误。在

^{2}$

它将出现在IE11中 请帮帮我~

问题的类型与建议的答案不同。 我想我需要修复pywin32中的错误。在


Tags: importclientdocifmsgresultwin32comwin32gui

热门问题