🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Python

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

Q&A

1回答

1289閲覧

LINEBotにメッセージが届かない

NNA

総合スコア10

Python

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

0グッド

0クリップ

投稿2019/12/15 07:41

編集2019/12/16 14:51

こんにちは。
Pythonからラインにメッセージが送れるLINEBotを作りたいと思っています。

このページを参考にLINEBotを作っています。
https://blue-black.ink/?p=3935

ラインにメッセージが来ないのでどこが間違っているのか探しているのですが見つけられません。
分かる方がいらっしゃいましたら教えていただきたいです。よろしくお願いいたします。

私がやったこと
1、コマンドプロンプトに

pip install requests

を送りました。

2,PythonでLINEにメッセージを送る準備

token = "私のを入力"
payload = {"massage": "Hello World"}
url = "http://notify-api.line.me/api/notify"
headers = {"Authorizatino": "Bearer" + token}
res = requests.post(url, data=payload, headers=headers)
print(res)


これを入力すると

Process finished with exit code 0

このように表示されて、ラインにはメッセージは来ませんでした。

3、コマンドプリンプトに

python test.py

を入力して
Response[200]

が帰ってきたら成功とありますが

python: can't open file 'test.py': [Errno 2] No such file or directory

と表示されています。

ラインには、LINE Notifyを追加し、トークンは二つ作りました。
(初めにグループで使用しようと作ったのですが、メッセージが来ないため個人のを作りましたが
両方メッセージがラインに来ない状態です。)

Pythonを始めたばかりでパイチャームの使い方が間違っているかもしれません。

フォルダ名はtestと、test.pyの二種類を作って試してみました。
ファイル名も同じように二種類作って試しました。

最後のコマンドプリンプトにpython test.pyと入力しなければいけないというのから見て、
ちゃんと私が作ったものがこれに当てはまっているのかわかりません。
Pythonで上の六行を実行するとCode0と表示されますが、その前に長い文章一行があります。
最後がDocuments/python/test.py/test.py
<Response [405]>
になっているのでファイルの保存方法がおかしいのでしょうか……

うまく伝わりづらいとは思いますがもしなぜメッセージが来ないかわかる方がいらっしゃいましたら教えてください.
よろしくお願い致します。

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

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

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

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

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

guest

回答1

0

実行場所が問題かと思われます。
"python test.py" を実行しているのは、"test.py" のある場所になっていますでしょうか。
例えば、example/test.py となっていれば、 example/ のところで"python test.pt" をする必要があります。

投稿2019/12/15 08:46

kabayan55

総合スコア389

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

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

NNA

2019/12/15 08:51

コメントありがとうございます!!!!さっきtest.pyってもしかしてファイル名???と思って、適当な名前だったのをtest.pyにしてみたのですが変化はありませんでした。(ファイル名はpyをとったtestにしなければいけませんか?) パソコンを購入したばかりで...パイチャームでやっているのですが、、 ファイル名pythonの中にtest.pyを作ればいいということでしょうか?><
kabayan55

2019/12/15 10:38

test.pyはファイル名で合っています。 .py は拡張子で、pythonのファイルであることを表すものです。 ファイル内に、質問内に書いてくださっているtokenから始まる6行が書いてあれば、大丈夫だと思います。 PyCharmで実行されているのであれば、実行は "python test.py" のようにしなくても、もっと簡単にできます。 "Run" となっているところをクリックするだけです。 以下のサイトの「Pycharm でプログラムを作成し、動かしてみる」を参考にしてみてください。 https://pythondatascience.plavox.info/pythonの開発環境/pycharmを使ってみる
NNA

2019/12/15 10:55

ありがとうございます。コマンドは入力しなくても大丈夫なのでしょうか?最初と最後に一行ずつコマンドで入力して、あの6行はPythonで入力しました。(なんでそうしてるかは理解していません><)フォルダとファイル名両方test.pyにしてみたのですがさっきと同じ .......code0が表示されてしまいます。
kabayan55

2019/12/15 11:09

> コマンドは入力しなくても大丈夫なのでしょうか? ターミナルで "python test.py" とするのは、test.pyというファイルのコードをpythonで実行しているのですが、PyCharmでRunをクリックするのと全く同じ操作なので、どちらかやりやすい方だけで構いません。 > 最初と最後に一行ずつコマンドで入力して これはそれぞれどのコマンドでしょうか? > あの6行はPythonで入力しました 理由ですが、その6行がPythonのコードだからです。 Pythonのコードを動かすには以下の2通りあって、参照URLの例では前者の方法を用いています。 - test.pyのようなファイルを作って、そこにコードを書いて、ターミナルからコマンドで "python test.py" のように動かす - Python インタプリタ (ターミナルでpythonって打つと出てきます)に直接コードを書く > .......code0が表示されてしまいます。 少なくとも[Errno 2] No such file or directoryの方のエラーは解決したようですね!メッセージを読む限り、無事にコードが実行できたということだと思うのですが、LINEのメッセージは届いていないということなんでしょうか?
NNA

2019/12/15 11:46

1.コマンドプロンプトに pip install requests 2.パイチャームに token = "私のを入力" payload = {"massage": "Hello World"} url = "http://notify-api.line.me/api/notify" headers = {"Authorizatino": "Bearer" + token} res = requests.post(url, data=payload, headers=headers) print(res) 実行すると Process finished with exit code 0 が表示されます。 3.コマンドプリンプトに python test.py を入力すると python: can't open file '縲€test.py': [Errno 2] No such file or directory か \Python\Python38-32\python.exe: can't find '__main__' module in 'test.py'が表示されます。 さっきからコマンドと言っていたのはコマンドプリンプトでした。 最初と最後に一行ずつコマンドで入力したと書いたのは、上に書いた1と3のことです。 code0と表示されるのはパイチャームで、Errono 2と表示されているのはコマンドプリンプトです。 pipというものがちゃんとインストールされていないのでしょうか? LINEにはLINE Notifyを追加して、グループを作ってそこに招待して中にいる状態です。(友達も後で入れたいのでグループを作りました。)
kabayan55

2019/12/15 12:11

まとめていただき、ありがとうございます。今回は2だけ解決すれば大丈夫だと思います。 質問の方も追加・修正していただければ、他の方からも回答をもらえる可能性が上がり、より良いかと思います。 1. pip install requests きちんとインストールできていると思います。ここがうまくいってない場合のエラーは出ていないようなので、そう思いました。このインストールは一度行ってしまえば、毎回する必要はありません。 2. おそらくここで終了(3は不要)で問題ないと思うのですが、LINEがこない状況なんですよね? 3. ここは今回の場合は不要です。エラーの理由に関しては、最初の回答で述べた通りです。具体的には、'cd' コマンドを使って、"test.py" の置かれているディレクトリ(フォルダ)までいき、"python test.py" をする必要があります。 > pipというものがちゃんとインストールされていないのでしょうか? pipはライブラリをインストールするもので、pip install requestsでは、requestsというライブラリをインストールしています。↑1.でも書きましたが、この部分は問題ありません。インストールできていない場合は、2.の段階でrequestsに関するエラーが出ているはずですが、現時点では出ていなそうです。 > LINEにはLINE Notifyを追加して、グループを作ってそこに招待して中にいる状態です。(友達も後で入れたいのでグループを作りました。) グループの場合と個人の場合で同じかどうかわからないので、個人のアカウント宛に試していただくことは可能でしょうか?
NNA

2019/12/15 13:30

ありがとうございます!!!!!!! 個人も作ってみましたがラインにメッセージは来ませんㅜㅜ ひとつ気になるのですが、 フォルダとファイル名をtest.pyにしたのですが、 Runで実行するときの名前がtestになっています。 この名前を変える必要があるのでしょうか?変えようと思っても消すことも変更もできなくて今何とかやろうと思っているところです><
kabayan55

2019/12/16 12:26

> フォルダとファイル名をtest.pyにしたのですが フォルダ名は、testにしてみてください。 フォルダ名には拡張子(.pyなど)はつきません。 > Runで実行するときの名前がtestになっています。 そのままで問題ありません。PyCharmの仕様です。 エラー出ない状態で(……code 0はエラーではなく完了のメッセージ)LINEが届かないのは原因見つけるのが難しいですね。 私にはわからなそうなので、ここのやり取りの必要そうな内容をまとめて質問自体に追記していただけると、きっとわかる方が回答してくださると思います!
NNA

2019/12/16 14:28

ありがとうございます!!!!!!!! ちゃんと分かっていれば的確に質問できるのですが何もわからないのでちゃんと説明もできないのにも関わらず色々教えていただきありがとうございます!!!!!!!!!質問文を変えてもう一度質問してみます!!!!!!本当にありがとうございます!!!!!!!!!!!!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問