import os
import getpass
class PROXY:
#Eine Liste von Proxies
proxies = {
"office":{Adresse des im Unternehmen verwendeten Proxyservers:Hafen},
"mobile":{Adresse des außerhalb des Unternehmens verwendeten Proxyservers:Hafen},
}
def __init__(self,prxy=None):
self.conf(prxy=prxy)
def conf(self,prxy=""):
if prxy not in [None,"office","mobile"]:
prxy = input("Proxy(office|mobile|none)")
if prxy in ["office","mobile"]:
name = input("ID:")
password = getpass.getpass("Password")
self.set_proxy(name,password,prxy=prxy)
else:
prxy = None
self.set_proxy(prxy=prxy)
#Proxy-ID,Legen Sie den Proxy in der Umgebungsvariablen aus Kennwort und Verbindungsquelle fest
def set_proxy(self,uid=None,pwd=None,prxy=None):
#Proxy entfernen
if prxy == None:
os.environ.pop('HTTP_PROXY', None)
os.environ.pop('HTTPS_PROXY', None)
print("clear Proxy")
#Richten Sie einen Proxy ein
elif prxy in self.proxies.keys():
prx = self.proxies[prxy]
os.environ['HTTP_PROXY']="http://{}:{}@{}".format(uid,pwd,prx)
os.environ['HTTPS_PROXY']="http://{}:{}@{}".format(uid,pwd,prx)
print("Set {} as Proxy".format(prx))
#Proxy entfernen
else:
os.environ.pop('HTTP_PROXY', None)
os.environ.pop('HTTPS_PROXY', None)
print("clear Proxy")
#Proxy-ID,Legen Sie den Proxy in der Umgebungsvariablen aus Kennwort und Verbindungsquelle fest
def check_proxy(self):
print('HTTP_PROXY:{}'.format(os.environ.get('HTTP_PROXY', None)))
print('HTTPS_PROXY:{}'.format(os.environ.get('HTTPS_PROXY', None)))
Wenn Sie Folgendes beschreiben, werden Sie aufgefordert, die ID und das Kennwort einzugeben, mit Ausnahme von prxy = None. Durch Eingabe der richtigen ID und des richtigen Kennworts werden die Proxy-Einstellungen, die nur für das Buch gültig sind, in den Umgebungsvariablen festgelegt.
#Bei Verwendung von Office Proxy
_ = PROXY(prxy="office")
#Bei Verwendung von Mobile Proxy
_ = PROXY(prxy="mobile")
#Wenn Sie Proxy nicht verwenden
_ = PROXY(prxy=None)
Recommended Posts