1

私は非常に簡単なはずだと思うことをしようとしていますが、xlrdブッククラスの属性としては存在しないようです。

ディレクトリ内のすべてのxlsxファイルを解析しているときに、どのファイルにどのエラーが存在するかをログに記録したいと思います。これを行うには、処理中のファイル名を印刷する必要があります。

目標:xlrdによって処理されているファイルの名前を出力します。つまり、以下の例の「filename.xlsx」

コード例:

Wb = xlrd.open_workbook ( "./data/excel_files/filename.xlsx" )
print "File being processed is: %s" % Wb.name_obj_list[0].name

これにより、「_xlnm._FilterDatabase」が出力されます。「filename.xlsx」を印刷したい。ブッククラスのドキュメントには、これを行う簡単な方法がありません。 http://www.lexicon.net/sjmachin/xlrd.html#xlrd.Book-class

何かアドバイス?

4

2 に答える 2

0

簡単なアプローチを試してください。

for filename in glob('*.xls*'):
    try:
       wb = xlrd.open_workbook(filename)
    except xlrd.XLRDERROR:
       print 'Problem processing {}'.format(filename)
于 2013-02-05T06:34:08.967 に答える
0

別のクラスのWbオブジェクトを含むファイル名を渡して印刷しました。

于 2013-02-07T03:48:23.280 に答える