質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Google Home

Google Homeは、Google社が開発したスマートスピーカーです。無線通信接続機能と音声操作の「Googleアシスタント」という機能を搭載。話しかけることで、音楽を聞いたり、写真や画像を見たり、様々なサービスを起動することができます。

Python 2.7

Python 2.7は2.xシリーズでは最後のメジャーバージョンです。Python3.1にある機能の多くが含まれています。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

1回答

730閲覧

レンタルサーバでのpythonの動かし方

momiji0210

総合スコア60

Google Home

Google Homeは、Google社が開発したスマートスピーカーです。無線通信接続機能と音声操作の「Googleアシスタント」という機能を搭載。話しかけることで、音楽を聞いたり、写真や画像を見たり、様々なサービスを起動することができます。

Python 2.7

Python 2.7は2.xシリーズでは最後のメジャーバージョンです。Python3.1にある機能の多くが含まれています。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2018/03/19 11:35

編集2018/03/20 01:35

「おもしろまじめなAIスピーカーアプリをつくろう -Google Home(アシスタント)&Amazon Echo(Alexa)音声アシスタント開発」
という書籍を購入してpythonの勉強をしております。

【環境】
・さくらインターネット レンタルサーバ
・MacOS

【やりたいこと】
Google Homeに話したことと同じ内容をオウム返ししてもらいたい(参考書籍にも記載)

「さくらインターネット レンタルサーバ」では直接、拡張子「.py」を動かすことができないようで、「.cgi」に変えて処理を確認しております。
下記ソースをサーバ上で動かすとInternal Server Errorがでてしまいます。

ローカル環境では入力画面になるため、表記ミスではない気が致します。
パーミッションも「request.py」と「input.txt」で705と755で試してみました。

python

1#!/usr/local/bin/python 2# -*- coding: utf-8 -*- 3 4import json 5import sys 6 7input = json.load(sys.stdin) 8 9with open("input.txt", "w") as file: 10 json.dump(input, file, indent=4) 11 12print ("Content-type: application/json\n") 13 14output = { 15 "speech": "abc" 16} 17 18json.dump(output, sys.stdout) 19#json.dump(input, sys.stdout)

request.pyにあるinput = json.load(sys.stdin)という行が原因のようでした。
こちら何が行けないのかお分かりになる方おりませんでしょうか。


180320 追記

ご回答ありがとうございます。
周りに聞けるエンジニア様がいないので非常に助かりました・・・。

さくらレンタルサーバはコンパネからエラーログ見れるのですね。
こちらも勉強になりました。

エラーログなのですが、下記が出力されておりました。
階層については一部伏字に置換しております。

Log

1[Tue Mar 20 10:29:07.095577 2018] [cgi:error] [pid 36088] [client 153.229.180.61:0] AH01215: Traceback (most recent call last):: /home/*****/www/test/googlehome/request.cgi 2[Tue Mar 20 10:29:07.095680 2018] [cgi:error] [pid 36088] [client 153.229.180.61:0] AH01215: File "request.cgi", line 7, in <module>: /home/*****/www/test/googlehome/request.cgi 3[Tue Mar 20 10:29:07.095692 2018] [cgi:error] [pid 36088] [client 153.229.180.61:0] AH01215: input = json.load(sys.stdin): /home/*****/www/test/googlehome/request.cgi 4[Tue Mar 20 10:29:07.095734 2018] [cgi:error] [pid 36088] [client 153.229.180.61:0] AH01215: File "/usr/local/lib/python2.7/json/__init__.py", line 290, in load: /home/*****/www/test/googlehome/request.cgi 5[Tue Mar 20 10:29:07.106446 2018] [cgi:error] [pid 36088] [client 153.229.180.61:0] AH01215: **kw): /home/*****/www/test/googlehome/request.cgi 6[Tue Mar 20 10:29:07.106503 2018] [cgi:error] [pid 36088] [client 153.229.180.61:0] AH01215: File "/usr/local/lib/python2.7/json/__init__.py", line 338, in loads: /home/*****/www/test/googlehome/request.cgi 7[Tue Mar 20 10:29:07.106603 2018] [cgi:error] [pid 36088] [client 153.229.180.61:0] AH01215: return _default_decoder.decode(s): /home/*****/www/test/googlehome/request.cgi 8[Tue Mar 20 10:29:07.106635 2018] [cgi:error] [pid 36088] [client 153.229.180.61:0] AH01215: File "/usr/local/lib/python2.7/json/decoder.py", line 365, in decode: /home/*****/www/test/googlehome/request.cgi 9[Tue Mar 20 10:29:07.107188 2018] [cgi:error] [pid 36088] [client 153.229.180.61:0] AH01215: obj, end = self.raw_decode(s, idx=_w(s, 0).end()): /home/*****/www/test/googlehome/request.cgi 10[Tue Mar 20 10:29:07.107230 2018] [cgi:error] [pid 36088] [client 153.229.180.61:0] AH01215: File "/usr/local/lib/python2.7/json/decoder.py", line 383, in raw_decode: /home/*****/www/test/googlehome/request.cgi 11[Tue Mar 20 10:29:07.107286 2018] [cgi:error] [pid 36088] [client 153.229.180.61:0] AH01215: raise ValueError("No JSON object could be decoded"): /home/*****/www/test/googlehome/request.cgi 12[Tue Mar 20 10:29:07.107304 2018] [cgi:error] [pid 36088] [client 153.229.180.61:0] AH01215: ValueError: No JSON object could be decoded: /home/*****/www/test/googlehome/request.cgi 13[Tue Mar 20 10:29:07.109381 2018] [cgi:error] [pid 36088] [client 153.229.180.61:0] End of script output before headers: request.cgi

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/03/19 12:00

コンパネからエラーログを確認しよう
CHERRY

2018/03/19 14:49

ところで、コマンドラインで動かしたいのでしょうか? CGI として Webブラウザからアクセスして動かしたいのでしょうか?
Udomomo

2018/03/20 00:18

エラーログを質問文に載せてください。
momiji0210

2018/03/20 01:37

こちらコメントありがとうございます。本当に助かります・・・。やりたいこととしてWebブラウザからアクセスして動かしたいです。
bassbone

2018/03/20 13:26

エラーメッセージから「sys.stdin」がJSONフォーマットになっていないのでは無いかと思うので、「sys.stdin」に何がセットされているか確認してみては。
guest

回答1

0

投稿2018/03/20 14:20

scsi

総合スコア2840

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問