Python “如何忽略”;输入专用代理访问的用户名";促使
我将urllib.urlopen与一些http代理一起使用,有时(可能是在它们需要授权时)会在控制台中打印以下提示:Python “如何忽略”;输入专用代理访问的用户名";促使,python,proxy,urllib,Python,Proxy,Urllib,我将urllib.urlopen与一些http代理一起使用,有时(可能是在它们需要授权时)会在控制台中打印以下提示: Enter username for Private Proxy Access (country) at xxx.xxx.xxx.xxx:xxxx 发生这种事我怎么能提出例外 下面是一个例子: from urllib import urlopen p = '64.79.209.238:36867' print urlopen('http://google.com', prox
Enter username for Private Proxy Access (country) at xxx.xxx.xxx.xxx:xxxx
发生这种事我怎么能提出例外
下面是一个例子:
from urllib import urlopen
p = '64.79.209.238:36867'
print urlopen('http://google.com', proxies={'http': 'http://'+p})
如果提到的代理过早死亡,这里有一些替换
64.79.197.36:43444
,64.79.209.203:34968
,64.79.197.36:43444
,209.59.207.197:3438
urlib.urlencode
永远不会打印该消息。这种方法从一开始就不会影响网络。你的问题在别的地方
我猜你正在后台运行另一个守护进程来打印消息
请提供准确的可复制代码和信息。触发消息的代理示例也不错。
urllib.urlencode
从不打印该消息。这种方法从一开始就不会影响网络。你的问题在别的地方
我猜你正在后台运行另一个守护进程来打印消息
请提供准确的可复制代码和信息。触发消息的代理示例也很好。您需要覆盖
FancyUrOpener。提示\u user\u passwd
方法:
class AuthorizationRequired(Exception):
pass
class MyURLOpener(urllib.FancyURLopener):
def prompt_user_passwd(self, host, realm):
raise AuthorizationRequired()
opener = MyURLOpener(proxies={'http': 'http://'+p})
fp = opener.open(url)
您需要覆盖FancyURLopener。提示\u user\u passwd方法:
class AuthorizationRequired(Exception):
pass
class MyURLOpener(urllib.FancyURLopener):
def prompt_user_passwd(self, host, realm):
raise AuthorizationRequired()
opener = MyURLOpener(proxies={'http': 'http://'+p})
fp = opener.open(url)
我对丹尼斯的代码做了一些修改:
import urllib
urllib.FancyURLopener.prompt_user_passwd = lambda *a, **k: (None, None)
它将完全禁用密码提示我对Denis的代码进行了一些调整,使其符合以下要求:
import urllib
urllib.FancyURLopener.prompt_user_passwd = lambda *a, **k: (None, None)
它将完全禁用密码提示,对不起,我现在才注意到我写的是urlencode而不是urlopen,对不起,我现在才注意到我写的是urlencode而不是urlopen