Ändern Sie die Browser-Proxy-Einstellungen von Python?

8

Ich habe ein Programm geschrieben, das auf einem Proxy basiert, um zu funktionieren. Ich brauche jetzt ein Skript, das prüft, ob der Browser den richtigen Proxy verwendet, und wenn nicht, ändern Sie ihn, um ihn zu verwenden. Ich brauche das für so viele Browser wie möglich implementiert, ist aber nur für Internet Explorer, Google Chrome, Mozilla Firefox, Safari und Opera erforderlich. Ich bin mir nicht einmal sicher, wie ich das anstellen soll, aber es ist für ein Arbeitsprojekt, das in ein paar Tagen fällig sein wird. Wenn jemand helfen oder beraten kann, würde ich es sehr schätzen!

Ich programmiere gerade:
MS Windows XP
Python 2.6

    
Zac Brown 16.06.2010, 02:01
quelle

1 Antwort

14

Das Windows speichert seinen systemweiten Proxy in der Registry, schauen Sie in das HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings . Sie können das Python _winreg-Modul verwenden, um es zu ändern (oder einfach winreg, wenn Sie Python 3 verwenden). Hier ist ein Beispielcode

%Vor%

Um es zu deaktivieren, müssen Sie den ProxyEnable-Schlüssel nur auf 0 setzen:

%Vor%

Nachdem das Skript ausgeführt wurde, wird der alte Proxy immer noch im Speicher des Browsers gespeichert. Daher müssen Sie ihn neu starten, damit er die neuen Proxyeinstellungen erneut aus der Registrierung lesen kann. Ich fand das sehr ärgerlich, also konvertierte ich dieses Snippet zu Python.

%Vor%

Dadurch werden die Windows-Einstellungen aktualisiert. Sie müssen lediglich F5 in Ihrem Browser drücken, um die neuen Proxy-Einstellungen zu übernehmen.

Ich habe ein kleines Skript geschrieben, um meinen Proxy ein- oder auszuschalten, die Quelle in Bitbucket: Ссылка

Dies sollte mit jedem Browser funktionieren, der den systemweiten Windows-Proxy verwendet (z. B. Chrome, IE). Einige Browser wie Firefox verwenden einen internen Proxy-Einstellungen. Wenn Sie diese ändern möchten, müssen Sie herausfinden, wo sie ihre Einstellungen speichern und Code schreiben, um sie zu ändern.

    
Cesar Canassa 22.06.2011, 19:38
quelle

Tags und Links