我将我制作的程序转换为cgi脚本时遇到了困难。我怀疑它与os.walk有关,所以我制作了一个较小的测试脚本来测试它。
(我注意到变量loc中D之前的单个\并尝试将其更改为双\仍然没有变化)
不产生错误无法说明为什么它不能在浏览器中使用os.walk运行for循环。
我尝试在s中添加一些数据并运行循环打印它的内容并且工作正常,但是尝试在os.walk上执行它我似乎无法使其工作。我无法在google或stackoverflow上找到与此问题相关的任何内容。
以下是代码:
import cgi,cgitb,os
loc = "C:\\Users\\wen\Desktop\\sample data\\old py stuff\\"
cgitb.enable(display=1,logdir=loc)
s = []
print("Content-type:text/html\r\n\r\n")
print("<html>")
print("<body>")
print("<p>"+loc+"</p>")
for r,ds,fs in os.walk(loc):
print("<p>omgwtf</p>")
for f in fs:
s.append(f)
for i in s:
print("<p>"+i+"</p>")
print("</body>")
print("</html>")
截取屏幕截图,左侧是解释器输出,右侧是浏览器 i.imgur.com/136y1Yq.jpg
网络服务器正在运行iis7
答案 0 :(得分:0)
我非常确定我已经解决了这个问题,我需要为“经过身份验证的用户”提供文件夹权限。