ConfigParser DuplicateOptionError mat HTTP_PROXY an http_proxy
Verstinn, firwat HTTP_PROXY an http_proxy an enger Linux-Ëmgéigend kënne bestoen, awer trotzdem DuplicateOptionError ausléisen, wann se als ConfigParser-Standardwäerter benotzt ginn.
An enger Ëmgéigend, déi tëschent Grouss- a Klengschreiwung ënnerscheet, kënnen HTTP_PROXY an http_proxy verschidden Nimm sinn. ConfigParser mécht d'Optiounsnumm normalerweis kleng, dofir kann et sinn, datt béid an den Standardwäerter zu enger duebeler Optioun ginn.
En Feeler, deen <dict> nennt, kann dofir aus ConfigParser(defaults=os.environ) kommen, ier iwwerhaapt eng Proxyverbindung versicht gëtt.
Wann d'Applikatioun bewosst Nimm vun der Ëmgéigend mat Grouss- a Klengschreiwung an dësem Parser brauch, setzt d'Normaliséierungspolitik, ier se gelueden ginn:
import configparser
import os
settings = configparser.ConfigParser(interpolation=None)
settings.optionxform = str
settings.read_dict({'DEFAULT': dict(os.environ)})Sou bleiwen déi zwou Schreifweise getrennt. Sich an all Konfiguratioun, déi duerno geliest gëtt, befollegen elo och dës Politik. D'Interpolatioun ausschalten verhënnert och, datt Prozentzeechen an Ëmgéigendswäerter als Interpolatiounssyntax behandelt ginn.
Wann d'Applikatioun eng Konfiguratioun ouni Ënnerscheed tëschent Grouss- a Klengschreiwung brauch, wielt déi gewollten Ëmgéigendinputen ausdrécklech aus a léist déi widerspriechend Schreifweisen no den Proxyregele vun deem Client, ier se dem Parser ginn.
D'Ännerung vun strict=False akzeptéiert Duebeler, awer et bestëmmt net, wéi en widerspriechende Proxywäert d'Applikatioun soll benotzen. Eng zefälleg Ëmgéigend-Schreifweis ewechzehuelen kann ubruecht sinn, wann Dir de Parser net kontrolléiert; bestëmmt als éischt, wéi en Wäert de Client floss ofwäerts brauch.