gpt4 book ai didi

python - 接收 "TypeError: the JSON object must be str, bytes or bytearray, not dict"

转载 作者:行者123 更新时间:2023-12-04 17:38:43 28 4
gpt4 key购买 nike

我有一个来自 Tweepy 的 json 输出,我现在正在尝试解析它。例如,一些输出是特定区域的趋势标签。由于它是一个大输出,我正在尝试确定如何有效地解析所有主题标签。 json 输出中还有其他信息,例如 useridcountrycode 等...但我只对列为 name 的主题标签感兴趣: '#gamenight 例如。

# using Tweepy

api.trends_place(2295420)

import json

# Here is a portion of the Tweepy output I received
trends = [{'trends': [{'name': '#RCBvKKR', 'url': 'http://twitter.com/search?q=%23RCBvKKR', 'promoted_content': None, 'query': '%23RCBvKKR', 'tweet_volume': 101508}, {'name': 'created_at': '2019-04-06T00:07:14Z', 'locations': [{'name': 'Bangalore', 'woeid': 2295420}]}]

hashtags = json.dumps(trends)

# Am trying to end up with a way of just extracting 'name' which I believe is how the hashtags are captured

print(hashtags['name'])

最佳答案

应该是hastags["trends"][0]["name"]来接收#RCBvKKR


好的,我修好了。首先,发布的代码令人困惑。您发布的 json 无效(缺少括号且名称键没有值)。其次,使用您的命令 json.dumps(trends),您正在将已经有效的 python 字典转换为字符串,这是一个数组,因此出现错误,(string indices must be integers)

固定版本是这样的:

import json

trends = [{'trends': [{'name': '#RCBvKKR', 'url': 'http://twitter.com/search?q=%23RCBvKKR', 'promoted_content': None, 'query': '%23RCBvKKR', 'tweet_volume': 101508}, {'name':"This was missing", 'created_at': '2019-04-06T00:07:14Z', 'locations': [{'name': 'Bangalore', 'woeid': 2295420}]}]}]


print(trends[0]["trends"][0]["name"])

现在输出是#RCBvKKR

如果您确实从 API 收到了 json 字符串,请使用 json.parse(response) 将字符串转换为 python 字典。

关于python - 接收 "TypeError: the JSON object must be str, bytes or bytearray, not dict",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55544822/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com