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()
ましたが、それでもエラーが発生しました。Windows Server 2008 マシン上のファイルのディレクトリにアクセスする Win7 を使用しています。ファイルは全員と共有されており、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