我在 Python 中使用 minidom 来解析网络目录中的一些日志文件。我可以很好地打印文件名列表,但会出现错误:
IOError: [Errno 13] Permission denied: '\\\\10.10.10.80\\logs'
每当我尝试解析时。这是我的代码:
import xml.dom.minidom as xml
import os
for filename in os.walk('\\\\10.10.10.80\logs\\'):
print filename
doc = xml.parse('\\\\10.10.10.80\logs', filename)
queue = doc.Element.getElementsByTagName('QueueEntry')
print queue
关于它为什么将我拒之门外的任何想法?尝试从本地目录解析文件时,我也会遇到同样的错误,因此它一定与网络无关。谢谢!
更新:
按照@inspectorG4dget 的建议进行了尝试chmod()
,但仍然出现错误。我在 Win7 上访问 Windows Server 2008 机器上的文件目录。这些文件与所有人共享,我可以通过 Windows 资源管理器打开、读取和写入。这是我的chmod()
代码,它返回了相同的错误和subproccess
我尝试的另一个片段:
import xml.dom.minidom as xml
import os, glob, sys, stat
for filename in os.walk('\\\\10.10.10.80\\logs\\'):
print filename
os.chmod('\\\\10.10.10.80\\logs\\', stat.S_IRWXO)
#Also tried other modes, all with the same error
doc = xml.parse('\\\\10.10.10.80\\logs', filename)
queue = doc.Element.getElementsByTagName('QueueEntry')
print queue
import xml.dom.minidom as xml
import os, sys, stat, subprocess
for filename in os.walk('\\\\10.10.10.80\\logs\\'):
subprocess.call(['chmod', '-R', '+w', '\\\\10.10.10.80\\logs'])
print filename
doc = xml.parse('\\\\10.10.10.80\\logs', filename)
queue = doc.Element.getElementsByTagName('QueueEntry')
print queue
这将返回错误:
WindowsError: [Error 2] The system cannot find the file specified