我正在尝试从 Twitter API 获取数据。以下是Python代码(我使用TwitterAPI)
api = TwitterAPI(consumer_key, consumer_secret, access_token_key, access_token_secret)
r = api.request('search/tweets', {'q':'pizza'})
for item in r:
print(item)
代码有效并打印结果。但是,它们不是有效的 JSON 对象。实际上,它包含额外的“u”字符,例如:
{u'contributors': None,
u'truncated': False,
u'text': u'RT
@pizzaminati: Your smile.\nYour laugh.\nYour crust.\nYour sauce.\nYour
cheese.\nYour toppings.\nYour jokes.\nYour weird faces.\nYour
teasing.\nPi\u2026'...
我曾使用 Objective-C 中的 Twitter 库进行工作,但它从未响应过类似的奇怪结果。你能告诉我如何获取有效的 JSON 对象(我也尝试过 Twython 并得到相同的结果)?在 Python 中解析 JSON 对象的最佳方法是什么? 谢谢。
最佳答案
我假设您使用的是 python 2.X
这个表示法只是Python显示unicode字符串的方式。
这可能更清楚:
>>> type(u'hello world')
<type 'unicode'>
>>> type('hello world')
<type 'str'>
如果您在 python 中解析对象并在 python 中进行后处理,这应该不是问题。但如果您将其复制并粘贴到其他内容中,可能会打扰您。
不幸的是,json 模块没有一个很好的内置方法来为您提供字符串而不是 json,但是 this stackoverflow answer可能有帮助
关于python - Python 中 Twitter API 的无效 JSON 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33464204/