比这篇新的文章: DTD对XML的内容定义
比这篇旧的文章: Codee#4595

Windows下来回切换代理的小脚本 - 主要为了Google Chrome

语言: Python, 标签: 代理 Chrome 2009/08/13发布 2年前更新 更新记录
作者: 半瓶墨水, 点击2507次, 评论(9), 收藏者(2), , 打分:

背景
主题: 字体:
01 #! /usr/bin/env python
02 # -*- coding: utf-8 -*-
03
04 #
05 # 一个来回切换代理服务器的小脚本
06 #   用Chrome,切换代理不方便,--proxy-server好像也不顶用
07 #
08 # 使用方法:
09 #   proxytoggle 127.0.0.1:8118
10 #   执行一次开启,再执行就关闭,再执行又开启,循环往复
11 #   我自己用的时候改成x.py,放到系统Path下,每次用前用后x一次就行
12 #
13 # 有自己主机的,可以用Tohr Proxy:
14 #   http://blog.solrex.cn/articles/tohr-the-onion-http-router.html
15 #
16 import struct
17 import _winreg
18 import sys
19
20 #proxy = sys.argv[1]
21 proxy = "127.0.0.1:8118"
22 root = _winreg.HKEY_CURRENT_USER
23 proxy_path = r"Software\Microsoft\Windows\CurrentVersion\Internet Settings"
24 kv_Enable = [
25   (proxy_path, "ProxyEnable", 1, _winreg.REG_DWORD),
26   (proxy_path, "ProxyServer", proxy, _winreg.REG_SZ),
27 ]
28
29 kv_Disable = [
30   (proxy_path, "ProxyEnable", 0, _winreg.REG_DWORD),
31   (proxy_path, "ProxyServer", proxy, _winreg.REG_SZ),
32 ]
33
34 hKey = _winreg.OpenKey(_winreg.HKEY_CURRENT_USER, proxy_path)
35 value, type = _winreg.QueryValueEx(hKey, "ProxyEnable")
36 kv = kv_Enable
37 result = "Enabled"
38 if value:
39     result = "Disabled"
40     kv = kv_Disable
41
42 for keypath, value_name, value, value_type in kv:
43     hKey = _winreg.CreateKey (root, keypath)
44     _winreg.SetValueEx (hKey, value_name, 0, value_type, value)
45
46 print result


所有评论,共9条:( 我也来说两句)

1
teloon 2年前 回复
0
0
cool~ 正好最近用chrome,没法切换代理的话翻墙还是太痛苦
2
0
0
@teloon 这个不是很好用,我后来又用autoit搞了一个新版 - 因为你不从Chrome里面启动proxy dialog,光改注册表是没用的
3
teloon 2年前 回复
0
0
@半瓶墨水: 我这里可以用啊,我用的是chromeplus,它用的代理就是IE的代理。 你说的autoit我不清楚,Google去。。
4
0
0
@teloon: 呵呵能用就好,不知道我这边是啥问题,不过没工夫整这个了,够用就行啊
5
teloon 2年前 回复
0
0
@半瓶墨水: 看了下autoit,还是挺强大的。平时写点小工具给自己用用还是蛮方便的,问一下这个能和高级语言如C、CPP整合吗?即相互调用
6
0
0
@teloon: 我也是偶尔用用,不要太依赖这个。有一篇比较autoit/autohotkey的文章:
http://blog.sina.com.cn/s/blog_46dac66f010005cr.html

我只用了两个autoit/ahk脚本,写脚本太费时间又不稳定,多数情况都不值得写一个
7
teloon 2年前 回复
0
0
@半瓶墨水: 恩,呵呵~ 这些东西不到有很大的需求的时候不去学,学习成本还是高了点
8
tedzhu 2年前 回复
0
0
刚才试了一下发现这个脚本挺好用的 但是每次切换都有一定的延迟 就是说过一阵子浏览器才会使用新的代理设置
在ie里设置代理之后,点击确定系统会卡住一下,然后再浏览就是刚设置的代理了
看看能否改进一下~~
9
0
0
@tedzhu: 我也遇到了这个问题,目前还搞不清楚IE自己切代理以后干了啥(broadcast?)

这里有一篇文章讲API代理的。当然最好的方式还是chrome自己可以切代理

发表评论

注册登录后再发表评论