0

我正在尝试从目录中动态导入 python 文件,然后以某种方式让这些函数对我可用,例如列表。目前,我正在从这些模块所在的父文件夹中导入所有模块,该文件夹包含__init__.py具有以下内容的文件

__init.py__

import os
import glob
modules = glob.glob(os.path.dirname(__file__)+"/*.py")
__all__ = [ os.path.basename(f)[:-3] for f in modules]

这可以导入所有模块。但是我不确定如何知道本地范围内的哪些功能来自导入以及我应该如何访问它们?这些模块可以更改,我基本上想将数据发送到导入的神秘函数。

关于如何解决这个问题的想法(使用 Python 2.7.6)?

为了扩展我正在做的事情,我正在使用 AFL fuzzer 来对导入的函数进行模糊测试。这将只是一个文件,该文件具有该项目的单个函数定义。这是一些可怕的伪代码。然后 module.func 是我需要弄清楚如何访问刚刚导入的任何函数的地方。

import sys
import os
sys.path.append('..')
from binary import *

def main():
    s = sys.stdin.read()
    try:
        module.func(s)
    except:
        os._exit(0)

if __name__ == '__main__':
    import afl
    afl.start()
    main()
4

0 回答 0