I am trying to build collective.simserver according to this manual, with some modifications:

instead of: virtualenv --python=bin/python2.7 simserver/ I am using: virtualenv --python=myVirtualEnv/bin/python simserver 

and I managed to come to this point:

myVirtualEnv/bin/python bootstrap.py 

and then it breaks apart with this error info:

An internal error occurred due to a bug in either zc.buildout or in a recipe being used: Traceback (most recent call last): File "/tmp/tmpLiHZgo/", line 1851, in main command) File "/tmp/tmpLiHZgo/", line 203, in __init__ data['buildout'].copy(), override, set())) File "/tmp/tmpLiHZgo/", line 1465, in _open parser.readfp(fp) File "/usr/lib/python2.6/ConfigParser.py", line 305, in readfp self._read(fp, filename) File "/usr/lib/python2.6/ConfigParser.py", line 482, in _read raise MissingSectionHeaderError(fpname, lineno, line) MissingSectionHeaderError: File contains no section headers. file: /home/nenad/buildout.cfg, line: 4 '<!DOCTYPE html>\n' Mint-AMD64 nenad # 

What might be wrong?

5 Answers

i think im late for answer but it happened for me when i saved Config file as UTF-8 Try saving the file as ANSI.

2

For me, I've seen this error because I mistakenly assume the API of .read_file() accepts a file path, but it only accepts a file handle.

2

There is no section header in the configuration file.

Essentially, the file consists of sections, each of which contains keys with values.

Docs ConfigParser python module

0

This error, is most likely because the sections in the config file are missing a header (or it is incorrectly specified). See the configparser docs to see the format the configuration files must have.

A configuration file consists of sections, which have to be preceded by a [header], for instance:

[DEFAULT] ServerAliveInterval = 45 Compression = yes CompressionLevel = 9 ForwardX11 = yes [bitbucket.org] User = hg [topsecret.server.com] Port = 50022 ForwardX11 = no 

And each section in the config file will contain key/value pairs separated by a string (= or : by default). The header of each section has to be in the format [header], anything different will yield a configparser.MissingSectionHeaderError.

1

Although the question was specifically asked in relation to buildout, this exception can occur more generally if you mistakenly pass a filename instead of a filehandle (or anything else file-like) to ConfigParser.read_file

Wrong:

config = ConfigParser() config.read_file('config.ini') 

Right:

config = ConfigParser() with open('config.ini') as fh: config.read_file(fh) # or: config.read('config.ini') 

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.