我正在处理一些Google自定义搜索引擎查询,并通过Python脚本以JSON格式返回结果。我感兴趣的其中一个字段是totalResults字段,它会告诉我搜索中有多少匹配,我需要进行多次查询,因为Google一次只能返回10次点击。
function showAlt(){
var img = document.getElementsByTagName("img");
var text = document.getElementById("text");
for(var i=0; i < img.length; i++){
img[i].addEventListener("mouseover", function(){
var alt = img[i].alt;
alt.appendChild(text);}}
}
当我收到我的搜索结果时
#!/usr/bin/python
import requests
import json
import re
r=requests.get("https://www.googleapis.com/customsearch/v1?key=MY_GOOGLE_API_KEY&cx=MY_APP_ID&q=MY_QUERY&alt=json",)
myjson=r.json()
print myjson["searchInformation"]["totalResults"]
for hit in myjson["items"]:
date=re.match('\w+ \d+\, \d+',hit["snippet"])
print str(date.group())+" "+hit["formattedUrl"]
我希望Python返回totalResults的值:
u'searchInformation': {u'formattedSearchTime': u'0.26',
u'formattedTotalResults': u'489',
u'searchTime': 0.25836300000000001,
u'totalResults': u'489'},
但是,不是返回489,而是返回21,这似乎是totalResults字段中整数的总和。那么如何抓住这个领域的价值呢?
答案 0 :(得分:0)
这有效:
>>> import json
>>>
>>> server_response = '{"searchInformation": {"formattedSearchTime": "0.26", "formattedTotalResults": "489", "searchTime": 0.25836300000000001, "totalResults": "489"} }'
>>> myjson = json.loads(server_response)
>>> print myjson["searchInformation"]["totalResults"]
489
也许这可以帮助您调试您遇到的问题。