【GAS】Google Apps Script 活用事例 すっごく簡単ッ!!ひらがな化APIを使ってみた。
面倒な漢字からひらがなの変換を自動化したい
漢字の氏名を、ひらがなに変換するスクリプトを書きました。
実際に使っていますが、漢字に関しては、体感的に35%くらいの精度です。かなり主導で修正しています。自動化にならんやん….。
「のび太 → のびふと」みたいな感じで、何だよ、コレ.....www。みたいなレベルです。
ただ、Google翻訳などのように、めっちゃ学習して、どんどん精度が上がっていくのだと思うので、使い続けるうちに精度が向上する事を祈るしかなさそうです。
APIを使ったスクリプトとしては、今まで一番簡単でした。
GitHubアカウントを作成し、app_idを取得するだけです。
ひらがな化API
//漢字から平仮名を返すAPI カスタム関数化
function HIRAGANA(name) {
const endPoint = 'https://labs.goo.ne.jp/api/hiragana';
const payload = {
"app_id": "***************",
"sentence": name,
"output_type": 'hiragana'
};
const options = {
"method": "post",
"payload": payload
};
const response = UrlFetchApp.fetch(endPoint, options);
const json = JSON.parse(response.getContentText());
const hiragana = json.converted;
console.log(json);
console.log(hiragana);
return hiragana
}
//起動時に管理の表の学生名に、平仮名を入力する
function convertedHiragana() {
const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
const targetSheet = spreadsheet.getSheetByName('管理表');
const values = targetSheet.getDataRange().getValues();
const sourceColumn = values[1].indexOf('漢字氏名');
const convertedColumn = values[1].indexOf('カナ氏名');
const targetColumn = convertedColumn + 1;//setValueで書き込む用
console.log(`漢字氏名 ${sourceColumn}`);
console.log(`カナ氏名 ${convertedColumn}`);
for(let i = 0; i < values.length; i++){
if(!values[i][2]){continue}//HRMOS IDが空白だったら、スキップする。
//漢字氏名が入力済みで、平仮名の列のみ空白の場合
if(values[i][sourceColumn] !== '' && values[i][convertedColumn] === '' ){
const kanji = values[i][sourceColumn];
const hiragana = HIRAGANA(kanji);
console.log(`実行結果 ${hiragana}`);
const row = i + 1;
const range = targetSheet.getRange(row, targetColumn);
console.log(range.getA1Notation());
range.setValue(hiragana);
}//if
}//for
}//end
今回の記事では、こちらの記事を参考にしました。
この記事が気に入ったらサポートをしてみませんか?