【问题标题】:Getting "TypeError: unhashable type" when using urllib2.urlopen [closed]使用 urllib2.urlopen 时获取“TypeError:unhashable type”[关闭]
【发布时间】:2026-02-08 07:25:01
【问题描述】:
headers = {"X-RJM-API-Key": "my API key here"}
url = "the url"
response = urllib2.Request(url, headers)
re = urllib2.urlopen(response)

以上内容应“返回可用于导出的 JSON 编码图表列表”。

但我只是得到 TypeError: unhashable type

有什么想法吗?

谢谢!

【问题讨论】:

  • 你在哪里得到这个错误?你能发布完整的回溯吗?

标签: python json api urllib2


【解决方案1】:

Request() 的第二个参数是data,而不是headers。使用显式关键字参数:

response = urllib2.Request(url, headers=headers)

【讨论】:

  • 谢谢,这是有道理的。虽然遇到了另一个错误。现在我得到“httplib.BadStatusLine: ''” 我会读一些关于它的东西,但是如果你碰巧有快速的洞察力,我也会很感激 :)
  • @user3546020:这通常意味着服务器在没有响应的情况下关闭了连接。你得到一个空的状态行,而不是 HTTP/1.1 200 OK 或类似的。