我被困在岩石和坚硬的地方。
我得到了一个非常受限的Python2/3环境,其中os
和subprocess
库都被禁止。我正在使用Python selenium测试文件上传功能;创建文件是直接的,但是,当我使用方法driver.send_keys(xyz)
时,send_keys需要一个完整的路径,而不仅仅是一个文件名。关于如何解决这个问题,有什么建议吗?
我不知道它是否能在非常受限的Python2/3中工作,但您可以尝试以下操作:
创建空文件,比如说empty.py
,就像这样:
with open('empty.py','w') as f:
pass
然后执行:
import empty
和:
pathtofile = empty.__file__
print(pathtofile)
这个利用事实的空文本文件是合法的python模块(记住设置不使用的名称(,并且通常导入机器集__file__
dunder,尽管这不是必需的,所以您可能会以None
结束。请记住,如果它不是None
,那么它就是所述文件(empty.py
(的路径,因此您需要进一步处理它以获得目录本身。
如果没有办法使用os
模块,除非脚本的位置是静态的(即,您将当前工作目录定义为常量(,然后您自己处理该目录中的所有路径/字符串操作,否则您似乎是SOL。
你将无法浏览目录中的内容,但你可以监视你创建的任何文件,只需自己存储路径,这会很乏味,但没有理由不起作用。
你将无法删除文件,我不认为,但你应该能够清除他们的内容