Modify INI file with Python

Kreuzade picture Kreuzade · Jul 24, 2012 · Viewed 17.7k times · Source

I have an INI file I need to modify using Python. I was looking into the ConfigParser module but am still having trouble. My code goes like this:

config= ConfigParser.RawConfigParser()
config.read('C:\itb\itb\Webcams\AMCap1\amcap.ini')
config.set('Video','Path','C:\itb\itb')

But when looking at the amcap.ini file after running this code, it remains unmodified. Can anyone tell me what I am doing wrong?

Answer

Martijn Pieters picture Martijn Pieters · Jul 24, 2012

ConfigParser does not automatically write back to the file on disk. Use the .write() method for that; it takes an open file object as it's argument.

config= ConfigParser.RawConfigParser()
config.read(r'C:\itb\itb\Webcams\AMCap1\amcap.ini')
config.set('Video','Path',r'C:\itb\itb')
with open(r'C:\itb\itb\Webcams\AMCap1\amcap.ini', 'wb') as configfile:
    config.write(configfile)