Skip to content

Commit

Permalink
keep work process when call translate api fail
Browse files Browse the repository at this point in the history
  • Loading branch information
biuuu committed Apr 5, 2018
1 parent d815e1a commit 8f9c768
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 19 deletions.
28 changes: 16 additions & 12 deletions api/google.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ const getTransResult = (res) => {
}


const googleTrans = (keyword, lang = 'en') => {
const googleTrans = async (keyword, lang = 'en') => {
let query = new UrlSearchParams({
client: 'gtx',
sl: lang,
Expand All @@ -24,19 +24,23 @@ const googleTrans = (keyword, lang = 'en') => {
query += `&dt=${item}`
})
const data = { q: keyword }
return axios.request({
url: `https://translate.google.cn/translate_a/single?${query}`,
params: data,
method: 'post',
headers: {
'referer': 'https://translate.google.cn',
'origin':'https://translate.google.cn',
'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36,',
}
}).then(res => {
try {
const res = await axios.request({
url: `https://translate.google.cn/translate_a/single?${query}`,
params: data,
method: 'post',
headers: {
'referer': 'https://translate.google.cn',
'origin':'https://translate.google.cn',
'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36,',
}
})
const txt = getTransResult(res)
return txt.replace(//g, '骑空团').replace(//g, '星晶兽')
})
} catch (err) {
console.error(`${err.message}\n${err.stack}`)
return ''
}
}

module.exports = googleTrans
13 changes: 8 additions & 5 deletions modules/translate/scenario.js
Original file line number Diff line number Diff line change
Expand Up @@ -89,11 +89,14 @@ const transMulti = async (list, lang, userName) => {
}))
return transStr.reduce((result, str) => {
let _str = str
if (CONFIG.yourName) {
const expr = CONFIG.yourName.replace(/\?/g, '\\?').replace(/\./g, '\\.').replace(/\*/g, '\\*').replace(/\+/g, '\\+')
_str = _str.replace(new RegExp(expr, 'g'), userName)
if (str) {
if (CONFIG.yourName) {
const expr = CONFIG.yourName.replace(/\?/g, '\\?').replace(/\./g, '\\.').replace(/\*/g, '\\*').replace(/\+/g, '\\+')
_str = _str.replace(new RegExp(expr, 'g'), userName)
}
return result.concat(_str.split('\n'))
}
return result.concat(_str.split('\n'))
return result
}, [])
}

Expand Down Expand Up @@ -137,7 +140,7 @@ module.exports = async (data, uid, pathname) => {
transMap.set(info.id, obj)
})
if (scenarioState.status === 'loaded') {
saveScenario(transMap, cloneScenario(data), filename, userName, lang)
saveScenario(transMap, cloneScenario(data), filename, userName, lang, !transList.length)
.catch(err => console.error(`保存剧情CSV失败:${err}\n${err.stack}`))
}
}
Expand Down
4 changes: 2 additions & 2 deletions utils/saveScenario.js
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ const replaceName = (content, userName) => {
}
}

const saveScenario = async (map, data, filename, userName, lang) => {
const saveScenario = async (map, data, filename, userName, lang, empty) => {
const info = scenarioState.map.get(filename)
const scenarioPath = path.resolve(USER_DATA_PATH, 'local/scenario/', `${filename}.csv`)
const result = []
Expand All @@ -42,7 +42,7 @@ const saveScenario = async (map, data, filename, userName, lang) => {
id: 'info',
en: lang === 'en' ? '1' : '',
jp: lang === 'jp' ? '1' : '',
trans: filename
trans: empty ? '' : filename
}
replaceName(result, userName)
result.push(extraInfo)
Expand Down

0 comments on commit 8f9c768

Please sign in to comment.