web-dev-qa-db-ja.com

ModuleNotFoundError:「google.cloud」という名前のモジュールはありません

Googleの「クラウドテキスト読み上げ」APIを使用しようとしていますが、モジュールが見つからないという一般的な問題があります。私はほとんどの人が持っているソリューションを試してみましたが、問題はWindowsを使用していることだけで、ほとんどのソリューションはMacまたはLinux用です(ただし、これはそれほど大きな問題ではないはずです)。

コマンドラインで「pipリスト」を実行したところ、次の結果が返されました。

google                    2.0.1
google-api-core           1.7.0
google-auth               1.6.3
google-cloud              0.34.0
google-cloud-texttospeech 0.4.0
googleapis-common-protos  1.5.8

そして、これが役立つ場合、これは私がインポートステートメントで実行しているものです(これもGoogleのチュートリアルから取得されます

>> from google.cloud import texttospeech

from google.cloud import texttospeech
ModuleNotFoundError: No module named 'google.cloud'

解決策はありますか?

3
Landon G

ModuleNotFoundError:「google.cloud」という名前のモジュールはありません

この問題を解決するために:

  1. Google-cloudを削除します:pip uninstall google-cloud
  2. 更新google-cloud-texttospeechを使用して再インストール:pip install --upgrade google-cloud-textdtospeech

ライブラリgoogle-cloudは非推奨になりました。このライブラリをインストールしたり、使用したりしないでください。

Text to Speechを使い始めるためのサンプルコード:

from google.cloud import texttospeech

# Instantiates a client
client = texttospeech.TextToSpeechClient()

# Set the text input to be synthesized
synthesis_input = texttospeech.types.SynthesisInput(text="Hello, World!")

# Build the voice request, select the language code ("en-US") and the ssml
# voice gender ("neutral")
voice = texttospeech.types.VoiceSelectionParams(
    language_code='en-US',
    ssml_gender=texttospeech.enums.SsmlVoiceGender.NEUTRAL)

# Select the type of audio file you want returned
audio_config = texttospeech.types.AudioConfig(
    audio_encoding=texttospeech.enums.AudioEncoding.MP3)

# Perform the text-to-speech request on the text input with the selected
# voice parameters and audio file type
response = client.synthesize_speech(synthesis_input, voice, audio_config)

# The response's audio_content is binary.
with open('output.mp3', 'wb') as out:
    # Write the response to the output file.
    out.write(response.audio_content)
    print('Audio content written to file "output.mp3"')
2
John Hanley