当前位置: 首页 > 面试题库 >

urllib2的代理

姜永贞
2023-03-14
问题内容

我打开网址:

site = urllib2.urlopen('http://google.com')

我想做的是用同样的方式连接到我在某处告诉我的代理:

site = urllib2.urlopen('http://google.com', proxies={'http':'127.0.0.1'})

但这也不起作用。

我知道urllib2具有类似代理处理程序的功能,但是我不记得该功能了。


问题答案:
proxy = urllib2.ProxyHandler({'http': '127.0.0.1'})
opener = urllib2.build_opener(proxy)
urllib2.install_opener(opener)
urllib2.urlopen('http://www.google.com')


 类似资料:
  • 问题内容: 我打开网址: 我想做的就是以相同的方式连接到我在某处告诉我的代理: 但这也不起作用。 我知道urllib2具有类似代理处理程序的功能,但是我无法回忆起该功能。 问题答案:

  • 问题内容: 如何使用除urllib2.urlopen上的默认代理之外的其他用户代理下载网页? 问题答案: 这个问题中有示例代码,但是基本上你可以执行以下操作:(请注意User-Agent,RFC 2616第14.43节的大写形式。)

  • 问题内容: 每个开启器基本版本是否可以通过一个袜子服务器上的SOCKS代理使用urllib2来获取页面?我已经看到了使用setdefaultproxy方法的解决方案,但是我需要在不同的开瓶器中使用不同的袜子。 因此,有一个SocksiPy库,它很好用,但是必须以这种方式使用: 也就是说,它为所有urllib2请求设置相同的代理。如何为不同的开瓶器使用不同的代理? 问题答案: 尝试使用pycurl:

  • 问题内容: 我正在urllib2的urlopen中使用timeout参数。 我如何告诉Python,如果超时到期,应该引发自定义错误? 有任何想法吗? 问题答案: 在极少数情况下要使用。这样做会捕获可能很难调试的 任何 异常,并且会捕获包括和在内的异常,这些异常会使您的程序恼人。 最简单的说,您会发现: 以下内容应捕获连接超时时引发的特定错误:

  • 问题内容: 我正在与API建立多个连接。进行删除查询。我在第3000个查询中遇到了该错误。 像这样: 比在控制台中: 在第3000个请求之后,它会说: 问题答案: 该错误来自Windows本身,请参阅避免TCP / IP端口耗尽。要修复错误,请关闭您的连接,因为您没有在调用opener.close()从而导致套接字泄漏。

  • 问题内容: 我最近尝试使用多处理模块(和它的)来加速一个小工具(使用urllib2将请求发送到(非官方)twitter-button-count-url(> 2000 url)并解析其结果)工人池)。我在这里阅读了一些有关多线程(与标准的非线程版本相比,它使整个过程变慢)和多处理的讨论,但是我找不到(可能非常简单)问题的答案: 您可以通过多处理来加速url调用吗,还是不是像网络适配器那样的瓶颈?我