我使用的是一个闭源Python库,它主要是来自开源Python库的对象的包装器。我希望捕获闭源包装器在我的程序运行时进入开源库的调用。
(我在Windows上使用Python 2.7。)
供应商将集团分发为* .pyd文件,因此无需读取或修改源代码。但是,内部库对象在运行时可以通过公开的包装器对象实现细节和Python反射来访问。
我的基本想法是{}加载模块时monkey patch,capture all method calls。但是,我对Python不熟悉,不知道我应该考虑哪些细节,以及我可以使用的其他技术。