cherrypy:如何从cherrypy访问文件系统?

发布于 2024-11-14 12:58:07 字数 182 浏览 1 评论 0原文

我正在开发一个 cherrpy 网络服务来与我的网络应用程序配合使用。在此服务中,它需要能够访问文件系统。例如,我希望能够列出某个目录下的所有文件。我正在使用 os.walk('/public/') 但似乎无法让它工作,即使相同的代码可以在 cherrpy 之外工作。

有没有办法让它工作,这样我就可以使用cherrypy来管理文件?

I am working on a cherrpy web service to work with my web app. In this service it needs to be able to access the file system. For example, I want to be able to list all files under a certain directory. I am using os.walk('/public/') but don't seem to get it to work, even though the same code works outside of cherrpy.

Is there a way to make it work so I can use cherrypy to manage files?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

桃酥萝莉 2024-11-21 12:58:07

Web 应用程序以什么用户身份运行?它是否有权读取该文件夹?

根据文档 os.walk() 将忽略对 os.listdirs() 底层调用的错误

http://docs.python.org/release/2.4.4/lib/os-file-dir.html

您可以尝试设置 onerror 参数,

def print_error(error):
    print error

os.walk('/public/', print_error)

这可能会给您一个提示至于发生了什么事。

另外,您可以尝试直接进入 os.listdirs() 并查看是否有任何错误。

What user is the webapp running as, and does it have access to read the folder?

According to the documentation os.walk() will ignore errors from the underlying calls to os.listdirs()

http://docs.python.org/release/2.4.4/lib/os-file-dir.html

You could try setting the onerror argument like

def print_error(error):
    print error

os.walk('/public/', print_error)

which might give you a hint as to what's going on.

Also, you could try going directly to os.listdirs() and see if you get any errors from it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文