python google api获取特定信息

2024-09-30 04:28:39 发布

您现在位置:Python中文网/ 问答频道 /正文

#! /usr/bin/python
import pprint

from apiclient.discovery import build


def main():
  service = build("customsearch", "v1",                          
  developerKey="<mykey>")

  res = service.cse().list(
  q='the.hobbit.2012', 
  cx='<the other key>',
 ).execute()
 pprint.pprint(res)
if __name__ == '__main__':
main()

是我运行的代码,下面是我得到的结果:

{u'context': {u'title': u'IMDB Search Engine'},
 u'items': [{u'cacheId': u'kzgitw0HPeAJ',
             u'displayLink': u'www.imdb.com',
             u'formattedUrl': u'www.imdb.com/title/tt0903624/',
             u'htmlFormattedUrl': u'www.imdb.com/title/tt0903624/',
             u'htmlSnippet': u'Directed by Peter Jackson. With Martin Freeman, Ian     McKellen, Richard Armitage<br>  , Andy Serkis. A younger and more reluctant <b>Hobbit</b>,     Bilbo Baggins, sets out on <b>...</b>',
             u'htmlTitle': u'<b>The Hobbit</b>: An Unexpected Journey (<b>2012</b>) -     IMDb',    
             u'kind': u'customsearch#result',
             u'link': u'http://www.imdb.com/title/tt0903624/',
             u'pagemap': {u'aggregaterating': [{u'bestrating': u'10',
                                                u'ratingcount': u'157,307',
                                                u'ratingvalue': u'8.4',
                                                u'reviewcount': u'855'}],

现在我的问题是,如果我想从u'formattedUrl'获取信息 我以为我能做到

urlinfo = res['item']['url']['formattedUrl']

就像我用Objconfig做的那样。但这行不通。那么我该如何获得具体的信息呢?有什么简单的方法吗?你知道吗


Tags: theimportbuildcomtitlemainwwwservice
1条回答
网友
1楼 · 发布于 2024-09-30 04:28:39

From Google API Client documentation:“响应是从JSON响应构建的Python对象…”

items的值是一个数组,因此需要指定要检索的元素的id:

urlinfo = res['items'][0]['formattedUrl']

相关问题 更多 >

    热门问题