所以,我正在使用pytumblr API从Tumblr检索一篇博客文章。我想检索一篇文章并只提取文章内容。技术上Tumblr以dict
的形式发送给我,但是格式非常非常混乱。除此之外,它还使用单引号和双引号!我的代码是:
post = client.posts(blogName, type = 'text', tag = 'suggestion', limit = 1)
postformat = str(post[u'posts']).replace("[", "").replace("]", "")
blog = dict(ast.literal_eval(postformat))
print(post[u'body']).replace("<p>", "").replace("</p>", "")
首先,Tumblr给了我一个只有3个键的非常大的字典,但是每个键里面都有一个字典!(???). 所以,我需要获取我要查找的第一个键,然后使用ast将该键的内容转换回dict。当我试着那样做时,我得到了另一个错误。因此,我删除了post
前后的括号,并使用ast尝试解释内容。但当我这么做的时候,t在第三行抛出了一个语法错误。这是post[u'posts']
的原始格式,非常令人困惑。{但我也把它放在一个溢出的箱子上
语法错误是由于删除了方括号而导致的。在字典的某个地方有一个标签列表,你得到的字符串是:
也就是说,它从字典表示法切换到列表表示法,因为标记周围的
[]
不见了。在我怀疑}就是你要找的尸体。在
post['posts']
只是一个帖子列表,post['posts'][0]
是第一个,而{相关问题 更多 >
编程相关推荐