2016-01-26 6 views
7

:いいえセクション:PythonのConfigParser.NoSectionError:いいえセクション:私はConfigParser.NoSectionErrorを得続ける

[file] 
api_access_id = 123445567 
api_default_org = NAME 
api_secret_key = kjvhkd28unfkjs 
api_base_url = www.fakeurl.com/api 

私のコードは次のようになります。 'ファイル' エラーのよう

私の設定ファイルが見えます

config = ConfigParser.RawConfigParser() 
configFilePath = 'E:\Python\configfile\test.txt' 
config.read(configFilePath) 

try: 
    api_access_id = config.get('file', 'api_access_id') 
    api_secret_key = config.get('file', 'api_secret_key') 
    api_default_org = config.get('file', 'api_default_org') 
    api_base_url = config.get('file', 'api_base_url') 
except ConfigParser.NoOptionError : 
    print('could not read configuration file') 
    sys.exit(1) 

エラーは次のとおりです。

Traceback (most recent call last): 
File "E:/Python/Testapi.py", line 13, in <module> 
api_access_id = config.get('file', 'api_access_id') 
File "C:\Python27\lib\ConfigParser.py", line 330, in get 
raise NoSectionError(section) 
ConfigParser.NoSectionError: No section: 'file' 

Process finished with exit code 1 

この問題の原因を知っている人はいますか?私のファイルは、あなたがバックスラッシュを使用してパスを定義している私のアプリケーション

+0

こんにちはそして歓迎を。あなたが受け取ったエラーを含めてください –

+0

こんにちはマルコ、ありがとう、ちょうどエラーコード –

+0

を追加しましたこれは非常に奇妙です、私はこれが間違っているのを見ることができません –

答えて

11

のフォルダにすでにあったよう

+0

こんにちは感謝glibdudは、 )しかし、答えが正しかったことに感謝します.Dと私は直前にそれを把握することができなかった場合は私の問題を解決するだろう –

0

configFilePath = 'test.txt' 

にファイルのURLを変更:

configFilePath = 'E:\Python\configfile\test.txt' 

をこれらの解釈を取得しますその結果、正しいファイルがロードされていません。 (残念ながら、エラーメッセージは、このインスタンスではあまり役立ちません。)あなたがそれらをエスケープするか、生の文字列を使用する必要があり、次のいずれか

configFilePath = r'E:\Python\configfile\test.txt' 
0

configFilePath =「E:\ Pythonの\ configファイル\ test.txtの」ファイルが見つからないように間違っています。
コードをこのように変更して、このようなエラーをトラップします。

import ConfigParser, sys 
config = ConfigParser.RawConfigParser() 
configFilePath = './config.cfg' 
try: 
    config.read(configFilePath) 
except Exception as e : 
    print(str(e)) 
try: 
    api_access_id = config.get('file', 'api_access_id') 
    api_secret_key = config.get('file', 'api_secret_key') 
    api_default_org = config.get('file', 'api_default_org') 
    api_base_url = config.get('file', 'api_base_url') 

except Exception as e : 
    print(str(e),' could not read configuration file') 
print api_access_id, api_secret_key, api_default_org, api_base_url 
sys.exit() 
1

はい、「\」の後のすべての文字がPythonでエスケープされるため、ファイルパスが正しく読み込まれません。代わりに、次の操作を行います。

configFilePath = 'E:\\Python\\configfile\\test.txt' 

またはこの:StackOverflowのに

configFilePath = 'E:/Python/configfile/test.txt' 
関連する問題