Google的“定义:”通过API? [英] Google's "define: " through an API?

查看:99
本文介绍了Google的“定义:”通过API?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想获得在Google中使用特殊功能的搜索结果,例如define:[phrase],我似乎无法找到关于此的相关信息。



有没有人知道我可以在哪里以JSON格式获取数据(就像Google的其他API一样),而无需手动获取结果页?

谢谢,
Eli

解决方案

我希望我没有为此付出代价,因为几天后我偶然发现了答案,它非常简单。



如果您想定义爱情


http: //www.google.com/dictionary/json?callback=a&sl=en&tl=en&q=love


您将得到一个包含JSONP的响应流,其中包含以下内容(用于学习目的的prettified,API全部返回一行) :

  a(
{
query:love,
sourceLanguage :en,
targetLanguage:en,
primaries:[
{
type:headword,
terms :[
{
type:text,
text:love,
language:en,
labels :[
{
text:名词,
title:词性
}
]
} ,
{
type:phonetic,
text:/ləv /,
language:und
} ,
{
type:sound,
text:http://www.gstatic.com/dictionary/static/sounds/de/0/love.mp3 ,
languag e:und
}
],
条目:[
{
type:ated,
terms :[
{
type:text,
text:loves,
language:und,
labels :[
{
text:plural
}
]
}
]
},
{
type:meaning,
terms:[
{
type:text,
text:深情,
language:en
}
],
条目:[
{
type:example,
terms:[
{
type:text,
text:婴儿让父母充满感情\ x3cem \x3elove\x3c / em\x3e,
language:en
}
]
},
{
type:example,
terms:[
{
type:text,
text:他们\x3cb\x3e\x3cem\x3elove\x3c / em\x3e for \x3c / b\x3e他们的国家,
语言 :en
}
]
}







$ b $ :文本,
文本:对某人的深度浪漫或性附着,
language:en
}
],
条目:[
{
type:example,
terms:[
{
type:text,
text:它是\x3cem\x3elove\x3c / em\x3e一见钟情,
language:en
}
]
},
{
type:example,
条款:[
{
type:text,
text:他们都是\ x3cb\x3ein \x3cem\x3elove\\ \\ x3c / em \ x3e with \x3c / b\x3e her,
language:en
}
]
},
{
type:example,
terms:[
{
type:text,
text:我们是在\x3cem\x3elove\x3c / em\x3e\x3c / b\x3e,
language:en
}
]
}
]
},
{
type:meaning,
terms:[
{
type:text,
text:A personified \x3cem\x3elove\x3c / em\x3e,经常表示为丘比特,
language:en
}
]
},
{
type:meaning,
terms:[
{
type:text,
text :
语言:en
}
],
条目:[
{
type:example,
terms:[
{
type:text,
text:他的\x3cb\x3e\x3cem\x3elove\x3c / em\x3e for \x3c / b\x3e football,
language:en
}
]
},
{
type:example,
terms :[
{
type:text,
text:我们共享一个\x3cb\x3e\x3cem\x3elove\x3c / em\\ \\ x3c / b \x3e音乐\\ x3e \\,
language:en
}
]
}
]
} ,
{
type:含义,
条款:[
{
type:text,
text:代表一位代表向某人表达的深情问候,
language:en
}



type:meaning,
terms:[
{
type: text,
text:一个结束亲热信件的公式,
language:en
}
],
条目:[
{
type:example,
terms:[
{
type:text,
文字:保重,很多\x3cem\x3elove\x3c / em\x3e,Judy,
language:en
}
]
}
]
},
{
type:意思,
terms:[
{
type:text,
text:一个人或事物,一个人\x3cem\x3拥有\x3c / em \x3e,
language:en
}
],
entries:[
{
type :example,
terms:[
{
type:text,
text:她是\x3cb\x3ethe \ x3cem\x3elove\x3c / em\x3e of his life\x3c / b\x3e,
语言:en
}
]
},
{
type:example,
terms:[
{
type:text,
text:他们两个很棒\x3cem\x3eloves\x3c / em\x3e是烟草和威士忌,
language:en
}
]
}
]
},
{
type:意思是,
条款:[
{
type:text,
text:友好形式的地址,
语言:en
}
],
entries:[
{
type:example,
terms:[
{
type:text,
text:it \x27s好,\x3cem\x3elove\x3c / em\x3e,
language:en
}












$ b $
type:text,
text:用于表达对某人的深情同意,
language:en
}
],
条目:[
{
type:example,
terms:[
{
type:text,
text:don\x27t fret,there \x27s a \x3cem\x3elove\x3c / em\x3e,
language:en
}
]
}
]
},
{
type:meaning,
terms:[
{
type:text,
text:(在网球,壁球和其他运动中)得分为零;
language:en
}
],
entries:[
{
type:example ,
terms:[
{
type:text,
text:\x3cem\x3elove\x3c / em\x3e十五,
language:en
}
]
},
{
type:example,
条款:[
{
type:text,
text:他将两套设置为\x3cem\x3elove\x3c / em\\ \\ x3e,
language:en
}
]
}
]
}
]
},
{
type:headword,
条款:[
{
type:text,
text:love,
language:en,
标签:[
{
text:动词,
标题:词性
}
]
},
{
type:phonetic,
text:/ləv /,
language:und
},
{
type:sound,
text:http://www.gstatic.com/dictionary/static/sounds/de/ 0 / love.mp3,
language:und
}
条目:[
{
type:related,
terms:[
{
type:text,
text:loved,
language:und,
labels:[
{
text:过去分词
}
]
},
{
type:text,
text: 爱,
language:und,
labels:[
{
text:第三人称单数形式
}
]
},
{
type:text,
text:loving,
language:und,
labels:[
{
text:现在分词
}
]
},
{
type:text,
text:爱,
language:und,
labels:[
{
text:过去时
}
]
},
{
type:meaning,
terms:[
{
type:t ext,
text:感受到(某人)深深的浪漫或性依恋,
language:en
}
],
条目:[
{
type:example,
terms:[
{
type:text,
text:你是\x3cem\x3elove\x3c / em\x3e我吗?,
language:en
}
]



$ btype:含义,
条款:[
{
type:text,
text:非常喜欢;
language:en
}
],
entries:[
{
type:例如,
terms:[
{
type:text,
text:I \x27d \x3cem\x3elove\ x3c / em\x3e一杯茶,谢谢,
language:en
}
]
},
{
type:example,
terms:[
{
type:text,
text:我只是\x3cem\ x3elove\x3c / em\x3e跳舞,
language:en
}





$ type $ :text,
text:a fun-\x3cem\x3eloving\x3c / em\x3e girl,
language:en
}
]
}
]
}
]
}
]
}
,200,null)

Google Dictionary API以回调函数(JSONP)的形式返回。在函数调用中处理JSON之前,必须去除回调函数数据。



这意味着在第一个 {以及最后一个}之后的所有内容之前, code>。

在此之后,你就完成了!这就是你需要的所有信息,当你在Google上搜索 define love 时,它基本上是相同的(实际上是更多!)信息。


I want to get the result of searches that use special features in Google, like "define: [phrase]" and I can't seem to find relevant information about this.

Does anyone knows where I can get the data in JSON format (like the rest of Google's APIs) without scraping the results page manually?

Thanks, Eli

解决方案

I wish I had not set a bounty for this, because I stumbled upon the answer a few days later and it is really simple.

Here is URL to call if you want a definition to love:

http://www.google.com/dictionary/json?callback=a&sl=en&tl=en&q=love

You will get a response stream containing JSONP, with the following contents ("prettified" for learning purposes, API returns all in one line):

a(
    {
       "query":"love",
       "sourceLanguage":"en",
       "targetLanguage":"en",
       "primaries":[
          {
             "type":"headword",
             "terms":[
                {
                   "type":"text",
                   "text":"love",
                   "language":"en",
                   "labels":[
                      {
                         "text":"Noun",
                         "title":"Part-of-speech"
                      }
                   ]
                },
                {
                   "type":"phonetic",
                   "text":"/ləv/",
                   "language":"und"
                },
                {
                   "type":"sound",
                   "text":"http://www.gstatic.com/dictionary/static/sounds/de/0/love.mp3",
                   "language":"und"
                }
             ],
             "entries":[
                {
                   "type":"related",
                   "terms":[
                      {
                         "type":"text",
                         "text":"loves",
                         "language":"und",
                         "labels":[
                            {
                               "text":"plural"
                            }
                         ]
                      }
                   ]
                },
                {
                   "type":"meaning",
                   "terms":[
                      {
                         "type":"text",
                         "text":"An intense feeling of deep affection",
                         "language":"en"
                      }
                   ],
                   "entries":[
                      {
                         "type":"example",
                         "terms":[
                            {
                               "type":"text",
                               "text":"babies fill parents with intense feelings of \x3cem\x3elove\x3c/em\x3e",
                               "language":"en"
                            }
                         ]
                      },
                      {
                         "type":"example",
                         "terms":[
                            {
                               "type":"text",
                               "text":"their \x3cb\x3e\x3cem\x3elove\x3c/em\x3e for\x3c/b\x3e their country",
                               "language":"en"
                            }
                         ]
                      }
                   ]
                },
                {
                   "type":"meaning",
                   "terms":[
                      {
                         "type":"text",
                         "text":"A deep romantic or sexual attachment to someone",
                         "language":"en"
                      }
                   ],
                   "entries":[
                      {
                         "type":"example",
                         "terms":[
                            {
                               "type":"text",
                               "text":"it was \x3cem\x3elove\x3c/em\x3e at first sight",
                               "language":"en"
                            }
                         ]
                      },
                      {
                         "type":"example",
                         "terms":[
                            {
                               "type":"text",
                               "text":"they were both \x3cb\x3ein \x3cem\x3elove\x3c/em\x3e with\x3c/b\x3e her",
                               "language":"en"
                            }
                         ]
                      },
                      {
                         "type":"example",
                         "terms":[
                            {
                               "type":"text",
                               "text":"we were slowly \x3cb\x3efalling in \x3cem\x3elove\x3c/em\x3e\x3c/b\x3e",
                               "language":"en"
                            }
                         ]
                      }
                   ]
                },
                {
                   "type":"meaning",
                   "terms":[
                      {
                         "type":"text",
                         "text":"A personified figure of \x3cem\x3elove\x3c/em\x3e, often represented as Cupid",
                         "language":"en"
                      }
                   ]
                },
                {
                   "type":"meaning",
                   "terms":[
                      {
                         "type":"text",
                         "text":"A great interest and pleasure in something",
                         "language":"en"
                      }
                   ],
                   "entries":[
                      {
                         "type":"example",
                         "terms":[
                            {
                               "type":"text",
                               "text":"his \x3cb\x3e\x3cem\x3elove\x3c/em\x3e for\x3c/b\x3e football",
                               "language":"en"
                            }
                         ]
                      },
                      {
                         "type":"example",
                         "terms":[
                            {
                               "type":"text",
                               "text":"we share a \x3cb\x3e\x3cem\x3elove\x3c/em\x3e of\x3c/b\x3e music",
                               "language":"en"
                            }
                         ]
                      }
                   ]
                },
                {
                   "type":"meaning",
                   "terms":[
                      {
                         "type":"text",
                         "text":"Affectionate greetings conveyed to someone on one\x27s behalf",
                         "language":"en"
                      }
                   ]
                },
                {
                   "type":"meaning",
                   "terms":[
                      {
                         "type":"text",
                         "text":"A formula for ending an affectionate letter",
                         "language":"en"
                      }
                   ],
                   "entries":[
                      {
                         "type":"example",
                         "terms":[
                            {
                               "type":"text",
                               "text":"take care, lots of \x3cem\x3elove\x3c/em\x3e, Judy",
                               "language":"en"
                            }
                         ]
                      }
                   ]
                },
                {
                   "type":"meaning",
                   "terms":[
                      {
                         "type":"text",
                         "text":"A person or thing that one \x3cem\x3eloves\x3c/em\x3e",
                         "language":"en"
                      }
                   ],
                   "entries":[
                      {
                         "type":"example",
                         "terms":[
                            {
                               "type":"text",
                               "text":"she was \x3cb\x3ethe \x3cem\x3elove\x3c/em\x3e of his life\x3c/b\x3e",
                               "language":"en"
                            }
                         ]
                      },
                      {
                         "type":"example",
                         "terms":[
                            {
                               "type":"text",
                               "text":"their two great \x3cem\x3eloves\x3c/em\x3e are tobacco and whiskey",
                               "language":"en"
                            }
                         ]
                      }
                   ]
                },
                {
                   "type":"meaning",
                   "terms":[
                      {
                         "type":"text",
                         "text":"A friendly form of address",
                         "language":"en"
                      }
                   ],
                   "entries":[
                      {
                         "type":"example",
                         "terms":[
                            {
                               "type":"text",
                               "text":"it\x27s all right, \x3cem\x3elove\x3c/em\x3e",
                               "language":"en"
                            }
                         ]
                      }
                   ]
                },
                {
                   "type":"meaning",
                   "terms":[
                      {
                         "type":"text",
                         "text":"Used to express affectionate approval for someone",
                         "language":"en"
                      }
                   ],
                   "entries":[
                      {
                         "type":"example",
                         "terms":[
                            {
                               "type":"text",
                               "text":"don\x27t fret, there\x27s a \x3cem\x3elove\x3c/em\x3e",
                               "language":"en"
                            }
                         ]
                      }
                   ]
                },
                {
                   "type":"meaning",
                   "terms":[
                      {
                         "type":"text",
                         "text":"(in tennis, squash, and some other sports) A score of zero; nil",
                         "language":"en"
                      }
                   ],
                   "entries":[
                      {
                         "type":"example",
                         "terms":[
                            {
                               "type":"text",
                               "text":"\x3cem\x3elove\x3c/em\x3e fifteen",
                               "language":"en"
                            }
                         ]
                      },
                      {
                         "type":"example",
                         "terms":[
                            {
                               "type":"text",
                               "text":"he was down two sets to \x3cem\x3elove\x3c/em\x3e",
                               "language":"en"
                            }
                         ]
                      }
                   ]
                }
             ]
          },
          {
             "type":"headword",
             "terms":[
                {
                   "type":"text",
                   "text":"love",
                   "language":"en",
                   "labels":[
                      {
                         "text":"Verb",
                         "title":"Part-of-speech"
                      }
                   ]
                },
                {
                   "type":"phonetic",
                   "text":"/ləv/",
                   "language":"und"
                },
                {
                   "type":"sound",
                   "text":"http://www.gstatic.com/dictionary/static/sounds/de/0/love.mp3",
                   "language":"und"
                }
             ],
             "entries":[
                {
                   "type":"related",
                   "terms":[
                      {
                         "type":"text",
                         "text":"loved",
                         "language":"und",
                         "labels":[
                            {
                               "text":"past participle"
                            }
                         ]
                      },
                      {
                         "type":"text",
                         "text":"loves",
                         "language":"und",
                         "labels":[
                            {
                               "text":"3rd person singular present"
                            }
                         ]
                      },
                      {
                         "type":"text",
                         "text":"loving",
                         "language":"und",
                         "labels":[
                            {
                               "text":"present participle"
                            }
                         ]
                      },
                      {
                         "type":"text",
                         "text":"loved",
                         "language":"und",
                         "labels":[
                            {
                               "text":"past tense"
                            }
                         ]
                      }
                   ]
                },
                {
                   "type":"meaning",
                   "terms":[
                      {
                         "type":"text",
                         "text":"Feel a deep romantic or sexual attachment to (someone)",
                         "language":"en"
                      }
                   ],
                   "entries":[
                      {
                         "type":"example",
                         "terms":[
                            {
                               "type":"text",
                               "text":"do you \x3cem\x3elove\x3c/em\x3e me?",
                               "language":"en"
                            }
                         ]
                      }
                   ]
                },
                {
                   "type":"meaning",
                   "terms":[
                      {
                         "type":"text",
                         "text":"Like very much; find pleasure in",
                         "language":"en"
                      }
                   ],
                   "entries":[
                      {
                         "type":"example",
                         "terms":[
                            {
                               "type":"text",
                               "text":"I\x27d \x3cem\x3elove\x3c/em\x3e a cup of tea, thanks",
                               "language":"en"
                            }
                         ]
                      },
                      {
                         "type":"example",
                         "terms":[
                            {
                               "type":"text",
                               "text":"I just \x3cem\x3elove\x3c/em\x3e dancing",
                               "language":"en"
                            }
                         ]
                      },
                      {
                         "type":"example",
                         "terms":[
                            {
                               "type":"text",
                               "text":"a fun-\x3cem\x3eloving\x3c/em\x3e girl",
                               "language":"en"
                            }
                         ]
                      }
                   ]
                }
             ]
          }
       ]
    }
,200,null)

Google Dictionary API returns in the form of a callback function (JSONP). Before you can process the JSON within the function call, you have to strip out the callback function data.

That means removing everything before the first { and everything after the last }.

After this you are done! That's all information you need and it's basically the same (actually a little more!) information when you search Google for define love.

这篇关于Google的“定义:”通过API?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆