我当前正在使用urllib加载url请求,然后将响应加载到json。这完美地工作了,但是当我更改日期范围时,一个字段包含\ n字符并且正在换行。
我如何阻止这种情况发生,我尝试了replace和rstrip,但似乎无法使它们正常工作。
这是我提取数据的代码:
req = urllib.request.Request("http://example.com/file.json")
r = urllib.request.urlopen(req).read()
#r = r.rstrip('\n')
content = json.loads(r.decode('utf-8'))
#content.replace('\n','') - fails due to incorrect type
谢谢
答案 0 :(得分:0)
您尝试在字典上调用.replace
。您应该在字符串上调用.replace
:
content = json.loads(r.decode('utf-8').replace('\n', ''))
但是,请记住,这可能会使字符串作为json无效,具体取决于其内容。
顺便说一句,如果您使用requests
,则可以直接获得json
:
import requests
content = requests.get("http://example.com/file.json").json()
答案 1 :(得分:-1)
尝试python String方法
json.loads(str(r,”utf-8”))
仅替换字符串
New_str = str(r,”utf-8”)