【问题标题】:response = request.urlopen(image_url) AttributeError: 'module' object has no attribute 'urlopen'response = request.urlopen(image_url) AttributeError: 'module' 对象没有属性 'urlopen'
【发布时间】:2018-03-02 03:41:21
【问题描述】:

Python 2.7.10 和 urllib3 在我的电脑上。 以下是我的 forms.py 文件:

from urllib3 import request
......
class ImageCreateForm(forms.ModelForm):
      def save(self, force_insert=False, force_update=False,
                commit=True):
......
response = request.urlopen(image_url)

在终端运行服务器后,出现如下错误:

AttributeError: 'module' 对象没有属性 'urlopen'

我该如何解决?

【问题讨论】:

  • urllib3 的文档没有提到 urlopen 函数。它确实提到了一些内部对象(即 HTTPConnectionPool 和 PoolManager)上的urlopen 方法。你确定那是你应该使用的吗?

标签: python django python-2.7


【解决方案1】:

documentation of urllib3 不包含名为 urlopen 的函数。

您可能更喜欢使用具有 urlopen 函数的 urllib2

【讨论】:

    【解决方案2】:

    request 对象没有urlopen 属性。怎么修?当然要加一个!

    from urllib3 import request
    import requests
    
    request.urlopen = requests.get
    ...
    response = request.urlopen(image_url)
    

    【讨论】:

      猜你喜欢
      • 2011-04-27
      • 2021-01-15
      • 2015-05-16
      • 1970-01-01
      • 2022-12-20
      • 2017-11-22
      • 2018-01-14
      • 2014-08-15
      • 2016-07-17
      相关资源
      最近更新 更多