将文本文件中的Tweet字符串转换为Python中的JSON对象
下面是一个示例字符串,我存储在名为将文本文件中的Tweet字符串转换为Python中的JSON对象,python,json,twitter,Python,Json,Twitter,下面是一个示例字符串,我存储在名为file.txt的txt文件中: { "created_at":"Wed Mar 30 23:13:12 +0000 2013", "id":3712307838977, "id_str":"12307838977", "timestamp_ms":"7392180” } 这些数据与tweet相关,每条tweet都位于文本文件的新行上 现在,我正在使用以下代码将其加载到python中: with open(test_file,
file.txt
的txt
文件中:
{
"created_at":"Wed Mar 30 23:13:12 +0000 2013",
"id":3712307838977,
"id_str":"12307838977",
"timestamp_ms":"7392180”
}
这些数据与tweet相关,每条tweet都位于文本文件的新行上
现在,我正在使用以下代码将其加载到python中:
with open(test_file, 'r') as f:
data = f.read().split('\n')
这给了我每个tweet的字符串列表。我想将其转换为json对象,以便执行以下操作:
for tweet in data:
created = tweet["created_at']
然而,在尝试使用
json.loads(tweet)
时,我遇到了许多不同类型的错误。有什么帮助吗?您最可能遇到的问题是因为字符串的这一部分:
"timestamp_ms":"7392180”
更具体地说,最后一句话“
您很可能会遇到以下错误:
json.decoder.JSONDecodeError: Unterminated string starting at: line 1 column 105 (char 104)
我不知道您是如何生成此文件的,但通过修复此问题并使用双引号“
转换工作正常
import json
with open('new_file.txt', 'r') as f:
json_data = json.loads(f.read().strip())
for data in json_data:
print(json_data[data])
输出:
3712307838977
12307838977
7392180
Wed Mar 30 23:13:12 +0000 2013
你能分享一下你的错误信息吗?谢谢@idjaw!在一个小错误上被困这么久让人沮丧,但我现在确实可以让它工作了。