Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/wilsonwu/translation-google
A Google Translate component for Nodejs.
https://github.com/wilsonwu/translation-google
china free google google-translate google-translate-api language translate translate-google translation-google
Last synced: about 2 months ago
JSON representation
A Google Translate component for Nodejs.
- Host: GitHub
- URL: https://github.com/wilsonwu/translation-google
- Owner: wilsonwu
- License: mit
- Created: 2020-03-13T15:43:43.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-03-12T14:53:22.000Z (10 months ago)
- Last Synced: 2024-10-14T16:10:34.921Z (2 months ago)
- Topics: china, free, google, google-translate, google-translate-api, language, translate, translate-google, translation-google
- Language: JavaScript
- Homepage:
- Size: 19.5 KB
- Stars: 46
- Watchers: 2
- Forks: 5
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
A Google Translate API:
**WARNING: There is IP banned risk from Google Translate when you use this way to do translation.**## Features
- Translate all languages that Google Translate supports.
- Support different area (Support Chinese user, in China Mainland could set the suffix to `'cn'` to make it work)## Live Demo with Nodejs
[![Edit translation-google-demo](https://codesandbox.io/static/img/play-codesandbox.svg)](https://codesandbox.io/s/youthful-napier-2bi1c?fontsize=14&hidenavigation=1&theme=dark)## Install
```
npm install translation-google
```## Usage
From automatic language detection to English:
``` js
var translate = require('translation-google');translate('This is Google Translate', {to: 'zh-cn'}).then(res => {
console.log(res.text);
//=> 这是Google翻译
console.log(res.from.language.iso);
//=> en
}).catch(err => {
console.error(err);
});
```For Chinese user, try this:
``` js
var translate = require('translation-google');translate.suffix = 'cn'; // also can be 'fr', 'de' and so on, default is 'com'
translate('This is Google Translate', {to: 'zh-cn'}).then(res => {
console.log(res.text);
//=> 这是Google翻译
console.log(res.from.language.iso);
//=> en
}).catch(err => {
console.error(err);
});
```Sometimes, the API will not use the auto corrected text in the translation:
``` js
translate('This is Google Translat', {from: 'en', to: 'zh-cn'}).then(res => {
console.log(res);
console.log(res.text);
//=> 这是Google翻译
console.log(res.from.text.autoCorrected);
//=> false
console.log(res.from.text.value);
//=> This is Google [Translate]
console.log(res.from.text.didYouMean);
//=> true
}).catch(err => {
console.error(err);
});
```## API
### translate(text, options)
#### text
Type: `string`
The text to be translated
#### options
Type: `object`
##### from
Type: `string` Default: `auto`
The `text` language. Must be `auto` or one of the codes/names (not case sensitive) contained in [languages.js](https://github.com/matheuss/google-translate-api/blob/master/languages.js)
##### to
Type: `string` Default: `en`
The language in which the text should be translated. Must be one of the codes/names (not case sensitive) contained in [languages.js](https://github.com/matheuss/google-translate-api/blob/master/languages.js).
##### raw
Type: `boolean` Default: `false`
If `true`, the returned object will have a `raw` property with the raw response (`string`) from Google Translate.
### Returns an `object`:
- `text` *(string)* – The translated text.
- `from` *(object)*
- `language` *(object)*
- `didYouMean` *(boolean)* - `true` if the API suggest a correction in the source language
- `iso` *(string)* - The [code of the language](https://github.com/matheuss/google-translate-api/blob/master/languages.js) that the API has recognized in the `text`
- `text` *(object)*
- `autoCorrected` *(boolean)* – `true` if the API has auto corrected the `text`
- `value` *(string)* – The auto corrected `text` or the `text` with suggested corrections
- `didYouMean` *(booelan)* – `true` if the API has suggested corrections to the `text`
- `raw` *(string)* - If `options.raw` is true, the raw response from Google Translate servers. Otherwise, `''`.Note that `res.from.text` will only be returned if `from.text.autoCorrected` or `from.text.didYouMean` equals to `true`. In this case, it will have the corrections delimited with brackets (`[ ]`):
``` js
translate('This is Google Translat').then(res => {
console.log(res.from.text.value);
//=> This is [Google Translate]
}).catch(err => {
console.error(err);
});
```
Otherwise, it will be an empty `string` (`''`).## License
MIT