错误“调用的对象已与其客户端断开连接” - 使用 python 和 win32com 自动化 IE 8

2023-11-26

我想自动化 Internet Explorer 8(在 Windows 7 上使用 python 2.7)机器。这是我之后的代码在 SO 上找到的帖子:

import sys, time
from win32com.client import WithEvents, Dispatch
import pythoncom
import threading    

stopEvent=threading.Event()

class EventSink(object): 
    def OnNavigateComplete2(self,*args):
        print "complete",args
        stopEvent.set()



def waitUntilReady(ie):
    if ie.ReadyState!=4:
        while 1:
            print "waiting"
            pythoncom.PumpWaitingMessages()
            stopEvent.wait(.2)
            if stopEvent.isSet() or ie.ReadyState==4:
                stopEvent.clear()
                break;   

if __name__ == '__main__':
    time.clock()
    ie=Dispatch('InternetExplorer.Application',EventSink)
    ev=WithEvents(ie,EventSink)       
    ie.Visible=True
    ie.AddressBar = True
    ie.Navigate("http://www.sap.com/austria/index.epx")
    waitUntilReady(ie)

我收到以下错误消息http://www.sap.com/austria/index.epx:

waiting
waiting
Traceback (most recent call last):
  File "C:\Users\w\My Documents\Aptana Studio 3 Workspace\MyApp\src\GoToIdeaWindow.py", line 41, in <module>
    waitUntilReady(ie)
  File "C:\Users\w\My Documents\Aptana Studio 3 Workspace\MyApp\src\GoToIdeaWindow.py", line 26, in waitUntilReady
    if stopEvent.isSet() or ie.ReadyState==4:
  File "C:\Python27\lib\site-packages\win32com\client\__init__.py", line 463, in __getattr__
    return self._ApplyTypes_(*args)
  File "C:\Python27\lib\site-packages\win32com\client\__init__.py", line 456, in _ApplyTypes_
    self._oleobj_.InvokeTypes(dispid, 0, wFlags, retType, argTypes, *args),
pywintypes.com_error: (-2147417848, 'The object invoked has disconnected from its clients.', None, None)

该代码适用于 google.com 或 bbc.com 等网站。有谁知道可能是什么原因?


在 IE9 上,您需要降低安全设置才能使脚本正常工作:

IE9 -> Internet Options -> Security -> Trusted Sites    : Low
IE9 -> Internet Options -> Security -> Internet         : Medium + unchecked Enable Protected Mode
IE9 -> Internet Options -> Security -> Restricted Sites : unchecked Enable Protected Mode
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

错误“调用的对象已与其客户端断开连接” - 使用 python 和 win32com 自动化 IE 8 的相关文章

随机推荐

  • 如何改变JTabbedPane的背景颜色?

    我知道你可以修改LaF属性 但是如果不这样做 如何实现这一点呢 我问只是因为setBackground似乎没有这样做 请注意 我希望更改以下属性 TabbedPane background or TabbedPane contentArea
  • 验证是否调用了所有 getter 方法

    我有以下测试 我需要验证 Person 类的所有 getter 是否都被调用 到目前为止 我已经使用了mockito的verify 来确保调用每个getter 有没有办法通过反射来做到这一点 可能会出现这样的情况 一个新的 getter 被
  • 我可以将哪些 Cortex-M3 中断用于通用工作?

    我有一些代码需要在特定中断发生时运行 我不想在中断本身的上下文中执行它 但我也不希望它在线程模式下执行 我想以低于促使其运行的高级中断的优先级运行它 但也以高于线程级别 以及其他一些中断 的优先级运行它 我想我需要使用其他中断处理程序之一
  • 查看 django Rest Framework 中 post_save 中的对象更改

    我很好奇是否有一种方法可以在使用 Django Rest Framework 保存对象后查看对象发生了什么变化 我有一些特殊的行为 我需要检查一个字段是否已从其原始值更改 我希望使用post save on generics Retriev
  • 是什么导致了 Java“找不到符号”错误?

    我正在修改继承的代码 并不断收到奇怪的 找不到符号 错误 这让我感到困惑 Error Compiling 1 source file to Users Inprimus Projects Workspace Soft build web W
  • 傻瓜式解析器和编译器。从哪儿开始? [复制]

    这个问题在这里已经有答案了 这是一个很好的listing 但是对于这一领域的新手来说 最好的是什么 适合来自较高水平背景 VB6 C Java Python 的人 不熟悉 C 或 C 与 Lex Yacc 相比 现阶段我对手写解析更感兴趣
  • 如何在 Spark 中将 n-gram 组合成一个词汇表?

    想知道是否有内置的 Spark 功能可以将 1 2 n gram 特征组合到单个词汇表中 环境n 2 in NGram随后调用CountVectorizer结果是一个只包含 2 grams 的字典 我真正想要的是将所有频繁的 1 gram
  • 如何隐藏或禁用功能中的打印消息

    假设我有一个函数 例如 ff lt function x cat x n x 2 并通过以下方式运行它 y lt ff 5 5 y 1 25 我的问题是如何禁用或隐藏5打印自cat x n 例如 y lt ff 5 y 1 25 您可以使用
  • 如何在 YAML 管道中循环访问用户定义的变量?

    我正在尝试循环访问 Azure DevOps YAML 管道中的用户定义变量 变量已通过 UI 创建 在我正在使用的 YAML 管道代码下方 trigger dev main pr dev pool vmImage ubuntu lates
  • 打印字体尺寸小于指定尺寸

    我想知道为什么 Mathematica 屏幕上显示的 12 点 Arial 字体向我的打印机提供的输出与其他程序的输出相比明显小于 12 点 我意识到多年来在 Mathgroup 主持的电子邮件列表中一直有一些关于这种行为的讨论 但我只是没
  • Codeigniter 和字符集

    我使用 Codeigniter 的时间不长 但我遇到了一些字符集问题 我在 CI 论坛上四处询问 但我想更进一步 仍然没有全局解决方案 http codeigniter com forums viewthread 204409 问题是数据库
  • 为 Swift 中的 Segue 做准备

    我面临错误消息 UIStoryboardSegue does not have a member named identifier 这是导致错误的代码 if segue identifier Load View pass data to n
  • WPF MVVM取消Window.Closing事件

    在与MVVMLight Toolkit一起使用的WPF应用程序中 我想看看您的意见 如果我需要取消窗口关闭事件 最好的实现方法是什么 在 Window Closing 事件中 我可以设置 e Cancel true 这可以防止关闭表单 确定
  • 如何在 R 中的 Crosstalk() 中的 filter_select() 中设置默认值 - Plotly

    我正在开发一个带有基于绘图的交互式图表的 rmarkdown HTML 虽然我可以完成图表中我想要的所有内容 但 crosstalk 中的 filter select 不允许我在其中设置默认值 因此 我的图表在初始加载期间看起来笨拙且糟糕
  • 在 Selenium (Python) 中使用 XPath 选择器“following-sibling::text()”

    我正在尝试使用 Selenium 在 Python 中 从网站中提取一些信息 我一直在使用 XPath 选择元素 但在使用以下同级选择器时遇到问题 HTML如下 span class metadata strong Photographer
  • 使用自定义原型实例化 JavaScript 函数

    我使用以下函数从参数数组创建 JavaScript 中的函数实例 var instantiate function instantiate return function constructor args prototype use str
  • 强类型 html 助手,具有不同的 get 和 post 模型

    如果获取操作返回具有 汽车 模型的视图 该视图显示来自对象的信息 并获取输入以在表单中发布到另一个采用 付款 类型对象的操作 视图上的模型是 Car 类型 并为我提供了强类型 html 支持和一些其他功能 如显示文本 但是对于发布 我没有像
  • Scala 中什么时候应该选择 Vector?

    看起来VectorScala 收藏聚会迟到了 所有有影响力的博文都已经离开了 In Java ArrayList是默认集合 我可能会使用LinkedList但只有当我仔细考虑了算法并足够仔细地进行优化时 在 Scala 中我应该使用Vect
  • 匹配美元金额的正则表达式

    有人可以为我提供以下模式的正则表达式吗 1234 31234 3 1234 56 123456 78 99 我的要求是小数点前不能超过6位 小数点后不能超过2位 请帮我 提前致谢 d d 0 6 d 1 2 d 确保字符串中至少有一位数字
  • 错误“调用的对象已与其客户端断开连接” - 使用 python 和 win32com 自动化 IE 8

    我想自动化 Internet Explorer 8 在 Windows 7 上使用 python 2 7 机器 这是我之后的代码在 SO 上找到的帖子 import sys time from win32com client import