python - 如何使用 json 文件使用 url lib

标签 python python-3.x urllib2

我正在尝试从 json 链接获取数据,但出现此错误:TypeError: can't concat str to bytes

这是我的代码:

l = "https://www.off---white.com/en/IT/men/products/omch016f18d471431088s"
url = (l+".json"+"?porcoiddio")
req = urllib.request.Request(url, headers)
response = urllib.request.urlopen(req)

size_opts = json.loads(response.decode('utf-8'))['available_sizes']

我该如何解决这个错误?

最佳答案

您的问题答案是将您的代码更改为:

size_opts = json.loads(response.read().decode('utf-8'))['available_sizes']

2018-10-02 22:55 更改:我查看你的源代码,发现 Response 503 ,你得到503的原因是请求没有包含cookie:

req = urllib.request.Request(url, headers=headers)

您已经更新了标题。

headers.update({"Cookie":cookie_value})
req = urllib.request.Request(url, headers=headers) # !!!! you need a headers include cookies !!!!

关于python - 如何使用 json 文件使用 url lib,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52599727/

相关文章:

Python 日志记录,终止符作为选项

java - 在 Python 中创建 Java DataInputStream 数据

python-3.x - Python 中的 exit(0) 和 exit(True) 之间有区别吗?

Python:如何处理 urllib2 中服务器抛出的异常?

python - 使用 python docker sdk 登录到 ecr registry 无法按预期工作

python - 索引与在另一个列表中使用一个列表索引不同步

python - 有没有办法限制提交给 worker 池的数量?

python - 列表附加在循环问题中

python - 为 python 中的每个 HTTP 请求创建新的 TCP 连接

python - Python 2.6 之前版本中 urllib2.urlopen() 的超时