我试图切片json文件以使其正常工作:JSON file
问题是json文件以var Nations =
开头。
var Nations = {"Nations":[{"Name":"Neutral","CanBeUsedAsBotFiller":false,....
所以我试图通过将其切掉并再次保存来摆脱它:
import urllib.request
urlData = 'http://storage.googleapis.com/nacleanopenworldprodshards/Nations_cleanopenworldprodeu1.json'
webURL = urllib.request.urlopen(urlData)
data = webURL.read()
sliced_data = data[14:][:-1]
f = open(r'file.json', 'w')
f.write(str(sliced_data))
f.close()
但保存的文件显示b'
b'{"Nations":[{".....
如何正确摆脱它并拥有一个可以在Python中使用的json文件?
答案 0 :(得分:2)
数据是从互联网上下载的,因此是字节数。所以你需要打开文件为二进制文件。
另请注意,您可以通过使用上下文处理程序来缩短范围;你可以一次完成切片的两个部分:
sliced_data = data[14:-1]
with f as open(r'file.json', 'wb')
f.write(str(sliced_data))
答案 1 :(得分:0)
如果解码为utf-8,它会将字节字符串转换为字符串。
f.write(sliced_data.decode('utf-8'))