【问题标题】:How to set proxy settings on MacOS using python如何使用 python 在 MacOS 上设置代理设置
【发布时间】:2017-02-15 17:01:48
【问题描述】:

如何在 MacOS 中使用 python 更改 Internet 代理设置以设置 Proxy serverProxy port

我使用以下代码在 Windows 上执行此操作:

import _winreg as winreg

INTERNET_SETTINGS = winreg.OpenKey(winreg.HKEY_CURRENT_USER, r'Software\Microsoft\Windows\CurrentVersion\Internet Settings', 0, winreg.KEY_ALL_ACCESS)

def set_key(name, value):
    _, reg_type = winreg.QueryValueEx(INTERNET_SETTINGS, name)
    winreg.SetValueEx(INTERNET_SETTINGS, name, 0, reg_type, value)

set_key('ProxyEnable', 0)
set_key('ProxyOverride', u'*.local;<local>')  # Bypass the proxy for localhost
set_key('ProxyServer', u'proxy.example.com:8080')

这可以在 MacOS 上实现吗?

【问题讨论】:

    标签: python macos python-2.7 python-3.x proxy


    【解决方案1】:

    经过长时间的搜索,我找到了如何在MacOs上使用python更改代理的这种方式。

    我们需要通过终端使用networksetup

    在 MacOS 上使用 python 设置 HTTP 代理服务器:

    import os
    
    proxy = "proxy.example.com"
    port = 8080
    
    def Proxy_on():
        os.system('networksetup -setwebproxy Ethernet '+proxy+' '+port)
    
    Proxy_on()
    

    并关闭它:

    import os
    
    proxy = "proxy.example.com"
    port = 8080
    
    def Proxy_off():
        os.system('networksetup -setwebproxystate Ethernet off')
    
    Proxy_off()
    

    如果网络服务不只是“以太网”,您可能需要解析networksetup -listallnetworkservices-listnetworkserviceorder 以获得正确的名称。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-09-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多