Google "define:" via API?

I want to get search results that use special functions in Google, for example "define: [phrase]", and I cannot find the relevant information about it.

Does anyone know where I can get data in JSON format (like other Google APIs) without manually clearing the results page?

Thanks Eli

+48
json google-search-api google-api
Jul 28 '11 at 13:33
source share
2 answers

It is a pity that I did not set generosity for this, because after a few days I came across an answer, and it is really simple.

Here is the url to call if you want the definition of love :

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

You will receive a response stream containing JSONP with the following contents ("prettified" for training purposes, the 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) 

The Google Dictionary API is returned as a callback function (JSONP). Before you can handle JSON in a function call, you need to disable these callback functions.

This means deleting everything before the first { and everything after the last } .

After that you are done! All the information you need, and it’s basically the same (actually a little more!) Information when you google search for define love .

+35
May 3 '12 at 6:13
source share
 from bs4 import BeautifulSoup import requests word = "democracy" url = 'https://www.google.co.in/search?q=define%20' + word + '#cns=1' response = requests.get(url, headers={"user-agent":"Mozilla/5.0(Macintosh; Intel Mac OS X 10.12; rv:49.0) Gecko/20100101 Firefox/49.0"}) html = response.content final_soup = BeautifulSoup(html,"html5lib") everyThing = final_soup.select("div._Jig") for line in everyThing: print("-",line.text) 

I wrote this script to get the word definition from google. Hope this helps, but doesn't use any API.

+3
Nov 25 '16 at 3:59
source share



All Articles