zmc
2023-08-08 e792e9a60d958b93aef96050644f369feb25d61b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import configparser
 
 
class Parser(configparser.RawConfigParser):
    def __init__(self, **kwargs):
        kwargs["allow_no_value"] = True
        configparser.RawConfigParser.__init__(self, **kwargs)
 
    def __remove_quotes(self, value):
        quotes = ["'", '"']
        for quote in quotes:
            if len(value) >= 2 and value[0] == value[-1] == quote:
                return value[1:-1]
        return value
 
    def get(self, section, option):
        value = configparser.RawConfigParser.get(self, section, option)
        return self.__remove_quotes(value)