如何在IE 8中自动设置代理
我有一份代理服务器的列表,里面包含了登录信息(格式是 user:pass@1.2.3.4:5678)。我想找个办法在 IE 8 中轮换这些代理。
尝试 1)
我使用了 Python 的 pywin32 模块,写了一个小脚本来设置代理。
from _winreg import *
def setProxy(proxy):
keyVal = 'Software\Microsoft\Windows\CurrentVersion\Internet Settings'
key = OpenKey(HKEY_CURRENT_USER, keyVal, 0, KEY_ALL_ACCESS)
SetValueEx(key, 'ProxyServer', 0, REG_SZ, proxy)
CloseKey(key)
这个方法对那些不需要用户名和密码的代理效果很好。但我发现有点不对劲,因为这些代理并没有工作。
尝试 2)
我打开了 IE。
依次点击 工具 -> Internet 选项 -> 连接 -> 局域网设置 -> 高级,我把代理设置成了 user:pass@1.2.3.4:5678。点击“确定”后,我之前输入的所有信息都消失了。
在 IE 8 中,你只能输入 IP 和端口,然后打开一个网址。这个时候,它会提示你输入用户名和密码。考虑到我的代理列表非常庞大,我需要找到一种自动设置的方法。
尝试 3)
我打开了控制面板 -> 所有控制面板项 -> 凭据管理器,发现我之前保存的代理凭据在里面。
我找到一个叫 cmdkey.exe 的工具,这是凭据管理器的命令行工具。我尝试创建一个代理凭据,和我之前在 IE 提示框中输入的凭据完全一样。
C:\Windows\system32>cmdkey /generic:Microsoft_WinInet_1.2.3.4:5678/My Proxy Source /user:USERNAME /pass:PASSWORD
这个凭据看起来和我现有的完全一样,所以我打开了 IE,试了试新的代理。但没有成功,我还是被要求输入代理的用户名和密码。
在 Windows 7 的 IE 8 中,在哪里/如何设置代理的用户名和密码呢?
1 个回答
奇怪的是,我发现需要去掉 Microsoft_WinInet_
,然后加上 LegacyGeneric
。这样做对我有效。此外,使用这种格式,我还能够保存员工的内网密码。所有信息都进行了更改,因为这是一个使用AD的企业网络。默认的领域是ISA代理服务器上的域,所以不需要 /user:Domain\username
。希望这对你有帮助。
有效的命令:
cmdkey.exe /generic:LegacyGeneric:target=192.168.0.254 /user:account /pass:complexe
我用的脚本可以一次创建7个密码,适用于所有内容:
WshShell.run "cmdkey.exe /generic:LegacyGeneric:target=" & proxyIP & " /user:" & user & " /pass:" & password & ""
原来的命令对我没有用:
cmdkey.exe /generic:Microsoft_WinInet_192.168.0.254:8080/DomainName /user:account /pass:complexe