pywebkit通过内省从python调用webkit。被调用函数的原型在运行时被绑定。对于开发人员来说,一个小问题是您不会在源代码中看到原型。你如何找到函数原型?特别是" add_event_listener"?
这段python代码来自pyjs.org pyjs / runners / giwebkit.py:
702 def addEventListener(self, element, event_name, cb):
703 listener = Callback(element, cb, False)
704 element.add_event_listener(event_name, listener, False)
在fedora 20上运行时会出现此错误:
File "/.../pyjs/runners/giwebkit.py", line 704, in addEventListener
element.add_event_listener(event_name, listener, False)
TypeError: add_event_listener() takes exactly 5 arguments (4 given)
如何找出传递给函数的参数及其类型" element.add_event_listener()"?我可以插入一段python代码来打印出来吗?
我搜索了找到add_event_listener()的原型,但是找不到答案。所以我在思考是否可以通过调用代码做一些事情。
感谢。
编辑:更改原始标题" python打印函数原型和/或参数,特别是来自webkitgtk3"的add_event_listener。更好地反映真正的问题。
答案 0 :(得分:0)
这来自HMR在评论中建议的内容。它包括两个步骤:第1步,获取webkit api:
然后手动将该接口映射到python接口(我想通过从参数列表的开头删除* target)。