簡體   English   中英

是否有用於 Google 語音轉文本語言支持的 API?

[英]Is there an API for language support for google speech-to-text?

有一個語言列表,但我找不到動態獲取它的 API 調用。 https://cloud.google.com/speech-to-text/docs/languages

沒有用於執行此操作的 API。 無論哪種方式,您都可以通過閱讀您發送的鏈接的源代碼,然后對其進行解析以列出它們,從而使用代碼列出可用語言。

如果你想使用 Python,你可以閱讀源代碼:

import requests    
SourceCode=requests.get('https://cloud.google.com/speech-to-text/docs/languages').text

對於解析,我將使用 Python 庫pandas [1] ,語言在<table></table>

這是我在 Javascript 中使用服務器的方法。

我只想提取英文代碼,所以我后面的一些步驟可能與您想要的不同,但下面是我的 JS,然后是 php,因為您無法從客戶端從 JS 中的另一個網站解析

Javascript 代碼(返回一個承諾):

const languageCodes = await (async () => {
  let phpFetched = await fetch('grab_languages.php');
  phpFetched = await phpFetched.text();
  let htmlDoc = (new DOMParser()).parseFromString(phpFetched, "text/html");
 
  htmlDoc =  Array.from(htmlDoc
                        .querySelector('#lang-table-container')
                        .querySelectorAll('table tr'))
                  .slice(1)
                  .map(el => Array.from(el.querySelectorAll('td')))
                  .filter(children => children[2].innerHTML === 'Default' &&
                                      children[1].innerHTML.split('-')[0] === 'en')
                  .map(children => {
                    return {
                      code: children[1].innerHTML,
                      description: (/\(([^)]+)\)/).exec(children[0].innerHTML)[1],
                    };
                  })
                  .reduce((acc, curr) =>
                    ({ ...acc, [curr.code]: curr.description }), {});

  return htmlDoc
})();

Php 代碼(我稱文件為grab_languages.php

<?php
    $url = "https://cloud.google.com/speech-to-text/docs/languages";
    $ch = curl_init( $url );
    curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
    $response = curl_exec($ch);
    curl_close($ch);
    echo $response;
    exit;
?>

我應該注意我的代碼靈感來自這些:

如果您對另一個 Python 實現感興趣,您可能也會發現很有幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM