【问题标题】:how to do urlopen over ipv4 by default默认情况下如何通过 ipv4 进行 urlopen
【发布时间】:2012-06-27 16:48:05
【问题描述】:

在python中urlopen的方法是什么,即使底层机器启用了ipv6网络,请求也是通过ipv4而不是ipv6发送的?

【问题讨论】:

标签: python ipv6 urllib ipv4


【解决方案1】:

我查看了源代码。不幸的是,urllib.urlopen() 似乎使用了httplib.HTTP(),它甚至不允许设置源地址。

urllib2.urlopen() 使用httplib.HTTPConnection(),您可以从它继承并创建一个默认设置源地址'0.0.0.0' 而不是'' 的类。然后你可以通过创建一个“新的”HTTPHandler()(看看它是如何在urllib2.py 中完成的)和一个新的开瓶器build_opener() 和/或install_opener() 以某种方式将这个新的覆盖类注入urllib2 的东西。

对不起,我说的不是很准确,但我从来没有做过这样的事情,也不知道它是如何工作的。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2015-08-22
  • 2020-06-19
  • 1970-01-01
  • 1970-01-01
  • 2012-02-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多