E.g. - translating "amigo" from Spanish to English.
This gives a result ("friend"), which I'd expect in the API.
Does the API also offer the dictionary-like elements from that page like in the following image?
The API is not free to test, so I've been unable to see if it contains the result I want or not.
If not possible, can anyone suggest a different API for the purpose (multilingual dictionary, at least English -> other languages)?
No. The Google Translate API doesn't expose an endpoint for retrieving the dictionary-like elements you're asking about.
As of today the functions available through the API are for:
Translation of text
Detection of the source language of the given text
Listing which language codes the API supports.
There's no endpoint available for retrieving the audio for the translations either.
On the plus side, I've seen that the API has had its list of supported languages expanded regularly, though, and its language models have apparently been being updated.
Recommendations for other APIs to use is outside the scope of StackOverflow, but some Google searching should help you find what's available.
Related
I'm trying to add my country( senegal ) language(wo = wolof) into googletrans. I already build a list of words, so now I want to integrate them in googletrans python library.
Please.
I don't think it is possible. The Google Translate APIs are simply a client that send the requests to Google servers where the translation work is actually done. There is no way to add a new language to the API. (You can confirm this by looking at the (unofficial) API source code.)
Besides, you need more than just a word list to do a reasonable job of translating from one language to another. (Word mapping without any context tends to produce nonsense.)
Having said that ... if you believe that you can do reasonable translation based on simple word maps, then you don't need to use Google Translate APIs at all. You can use your word lists / maps directly in your Python program.
When using the translation API, I get a different translation (and worse) than if I use translate.google.com.
I am working on a project for a client, and the client was dissatisfied with the translation and noticed the difference.
Do these two service use different engines? I read that the API uses nmt-mode now, and that translate.google.com already uses the same engine.
Both set to translate from Norwegian to English.
Any more information that can clear this up?
Thanks!
The result differences between the translate.google.com and the Translation API calls are considered as an expected behavior that can be generated due to maintenance tasks and the logic used by the internal processes; However, the engines used for each service seems to be private information.
Based on this, it is normal to get some variances when using the API. I think you can use the model parameter option as an available workaround in case you want to specify which of the available models to use, as well as take a look on the Specifying a model official documentation to get detail information about this alternative.
It's almost about 3 years later and the problem still remains!
So I was trying to translate a dataset with the Google Translate API, but in the end it failed to translate some texts to the target language (in my case, Persian/Farsi). So I decided to check them to see if there's a pattern and maybe translate them using the web version of Google Translate.
As I was doing so, I figured that the web version actually could translate some of those untranslated texts, BUT not all. When trying to find a reason for such behaviour, I found out that most of them were names and not sentences. But as we know, names can easily be written with the target language characters as the translation. But why the API doesn't transform those names while the web version does? This photo will explain everything perhaps:
verified translation
As can be seen, some translations have a badge indicating that the translation has been verified, while some others don't.
So to recap, my guess is that maybe the API is set to only use verified translations, but as for the web version, even unverified translations are allowed since you can edit or report them.
I know that Google Dictionary was discontinued in 2011, but the dictionary information and definitions are still available through google search results:
Does anyone know whether this information can be accessed through the Custom Search API or the Translate API?
I found this related question (but sadly without a satisfying answer).
I also needed Google Dictionary API for my project, it was not present so I decided to create one.
I scrapped the WebPage for the url https://www.google.com/#q=define+term where term is any word you want to get meaning of, and created the API, you can find it here Google Dictionary API.
How to use
The basic syntax of a URL request to the API is shown below:
https://api.dictionaryapi.dev/api/v2/entries/<--language_code-->/<--word-->
As an example, to get definition of English word hello, you can send request to:
https://api.dictionaryapi.dev/api/v2/entries/en/hello
The API also provides other meanings of the word, example sentences, and synonyms, if any.
If you want me to include any other details, please comment and I will happily extend the API to cover your needs.
In case you wish to see the code, it is on github.
Google Dictionary's content is licenced from Oxford Dictionaries' Lexico. Their API can be accessed from here.
Note their free access platform ("prototype") has a number of limitations:
1000 requests per month
Limited data access
Limited request rate
It doesn't look promising from the API Explorer
https://developers.google.com/apis-explorer/#search/dictionary/
I have the following three questions
I want to use Google's API to translate text. I know that Google charges separately for translation and detection. Google translate also supports translation two ways to translate
i) By specifying both source and target, as in
https://www.googleapis.com/language/translate/v2?key=INSERT-YOUR-KEY&source=en&target=de&q=Hello%20world&q=My%20name%20is%20Jeff
ii) By specifying just the target, where the source us auto-detected,
like this https://www.googleapis.com/language/translate/v2?key=INSERT-YOUR-KEY&target=de&q=Hello%20world
My question is, if i call the API as in the second example, will I be charged for both detection and translation or just translation?
Is it more efficient when you specify both source and target than when you just the target, or, are there any downsides of using the second way above?
How many words should be sent to Google Translate API to detect a language reliably?
Thanks
I pretty much translate using the second approach most of the time (not informing to google the source language) and they only charge for the translation, not for the detection.
However, you must be aware of the fact that, in case your source text is of the same language as your target language, google will attempt to translate it anyways, and sometimes it leads to confused results, or at least a translation which was not necessary, since you already had the text in the desired language.
I used the Google API to translate word from Ar to En I want to translate only one word every time and I want to get all the possible meaning for that word not only one meaning. How can I do that, all the codes I found give only one translation.
Unfortunately it is impossible for the current version of Google Translate API (v.2).
From the FAQ (https://developers.google.com/translate/v2/faq):
Q: Is it possible to get multiple translations of a word?
A: No. This feature is only available via the web interface
at translate.google.com
I have created a npm package that can do exactly what you want - extended google translate api
However, this package uses unofficial google translate API, so you can't use it in any commercial projects.