3

我在 PAMIE 上收到一个带有非常简单脚本的 TypeError,但我不确定我能做什么。我找到了一个答案,暗示库pywin32可能没有self为这个特定的方法(getElementsByTagName)设置参数,但我不确定,因为我不知道在哪里可以找到它的定义。

from  PAM30 import PAMIE

ie = PAMIE()
ie.navigate('google.com')
ie.getButtons()
ie.quit()
print 'done'

错误是:

Traceback (most recent call last):
  File "c:\pamie1.py", line 1, in <module>
    from  PAM30 import PAMIE
  File "C:\Python27\Lib\site-packages\PAM30.py", line 678, in getButtons
    return self.getElementsList("input", filter)
  File "C:\Python27\Lib\site-packages\PAM30.py", line 939, in getElementsList
    elements = self._ie.Document.getElementsByTagName(tag)
TypeError: getElementsByTagName() takes exactly 1 argument (2 given)

这是有问题的行PAM30

elements = self._ie.Document.getElementsByTagName(tag)

_ie_在哪里

self._ie = win32com.client.dynamic.Dispatch('InternetExplorer.Application')

我正在使用带有 Python2.7 32bit 的 Windows 7x64

4

3 回答 3

1

sourceforge 错误链接

“解决方法”似乎是启用兼容性视图(Tools > Compatibility View settings > Display all websites in Compatibility View)。

这是IE的一个错误。

于 2012-12-15T08:53:02.697 回答
1

解决方法 - PAMIE30 中的更改

elements = self._ie.Document.getElementsByTagName(tag)

elements = self._ie.Document.body.all.tags(tag)

这将在不需要使用兼容性视图的情况下工作!

于 2014-12-15T19:22:22.083 回答
0

修改这一行:

elements = self._ie.Document.getElementsByTagName(tag)

elements = self._ie.Document.Body.getElementsByTagName(tag)

于 2013-09-09T05:37:38.447 回答